[vtk-developers] VTK HDF5 libraries renamed to now have "_src" suffix? Bug?

Sean McBride sean at rogue-research.com
Tue Feb 13 11:32:38 EST 2018


On Tue, 13 Feb 2018 11:09:55 -0500, Ben Boeckel said:

>On Mon, Feb 12, 2018 at 16:10:41 -0500, Sean McBride wrote:
>> I guess HDF5 was recently updated?  Now, building & installing VTK
>> results in library filenames with "_src" appended.  ex: from
>> "libvtkhdf5_hl.a" to "libvtkhdf5_hl_src.a".
>> 
>> Was that change deliberate?  In our usage, where our app's Xcode
>> project references libraries by name, it's super annoying when the lib
>> names change.  Even if it was deliberate, it seems to be a change that
>> doesn't add much, but breaks compatibility.
>
>It was done because in the new module system the module target is
>"vtkhdf5" which is an interface library providing the base and HL HDF5
>libraries. The obvious name conflicts with this target and I renamed it
>following the directory structure. HL just followed the same pattern.
>The new imports are basically the new module system imports with a patch
>to use the old APIs.

Afraid I don't really follow, since I don't really know anything about the 'module system', etc.  But no matter.  :)  Is the takeaway that you cannot restore the old names? :(

>How are you extracting the information required for VTK_AUTOINIT bits in
>the Xcode project? Include paths? Transitive dependencies of what is
>linked?

I do as in /Examples/GUI/Cocoa.  See PrefixHeader.pch for the VTK_MODULE_INIT stuff.

As you see in that example's Xcode project, the libraries are added to the project, and so if their names change, the project needs updating too.  (That project doesn't include hdf5 so isn't impacted at least.)

Also: it seems the HDF5 changes didn't mangle all symbol names.  I now get link errors about duplicate symbols between ITK and VTK.  I suspect the greping of nm output omitted some symbols types, just like libTIFF was.  The author probably used something like:

nm libvtktiff.a |grep " [TRD] "

instead of:

nm libvtktiff.a |grep " [TRDS] "

See also:
<https://gitlab.kitware.com/vtk/vtk/merge_requests/3840/diffs?commit_id=ac9f3211a0ab139e7b5a22eeeebabd50a0f3a628>

As for ITK, seems it's not mangling HDF5 symbols at all, I'll follow on their list...

Cheers,

-- 
____________________________________________________________
Sean McBride, B. Eng                 sean at rogue-research.com
Rogue Research                        www.rogue-research.com 
Mac Software Developer              Montréal, Québec, Canada




More information about the vtk-developers mailing list