[vtkusers] [vtk-developers] vtkNetCDF upgraded to 4.1.1

Sean McBride sean at rogue-research.com
Wed Sep 8 16:56:00 EDT 2010


On Tue, 17 Aug 2010 15:11:12 -0400, Dave Partyka said:

>I just upaded VTK's netcdf from 3.6.2 to 4.1.1. In addition to the
>traditional C library I have also brought in the C++ version of the library
>(vtkNetCDF_cpp). I spent time creating the proper DLL exports, allowing even
>Windows developers to use the library! This provides a nicer API that
>developers can use when writing new netcdf readers/writers. Also with netcdf
>4.x we can now potentially use HDF5 based NetCDF files. See here for the
>release notes for NetCDF 4. As always we value feedback from the community,
>feel free to report any issues. In the mean time I will be monitoring the
>dashboards.

Dave,

I believe there is some mangling missing after your change.  I just
pulled VTK from git and my app, which links to both NetCDF and VTK, no
longer links.  Error is:

ld: duplicate symbol _nc_inq_type in /path1/libnetcdf.a(nc.o) and /path2/
libvtkNetCDF.a(nc.c.o)

If I do the following:

nm libvtkNetCDF.a | grep " [TRD] "

It lists several symbols that aren't prefixed by vtk_netcdf, namely:

0000000000003083 T _nc_inq_type
0000000000000043 T _nextUTF8
00000000000008ae T _nulldup
00000000000018ae T _utf8proc_NFC
0000000000001860 T _utf8proc_NFD
000000000000194a T _utf8proc_NFKC
00000000000018fc T _utf8proc_NFKD
0000000000001998 T _utf8proc_check
0000000000000343 T _utf8proc_codepoint_valid
0000000000000fd1 T _utf8proc_decompose
00000000000005d9 T _utf8proc_decompose_char
00000000000003c6 T _utf8proc_encode_char
0000000000000000 T _utf8proc_errmsg
000000000000054b T _utf8proc_get_property
00000000000000cf T _utf8proc_iterate
000000000000172b T _utf8proc_map
000000000000126a T _utf8proc_reencode

nc_inq_type certainly should be in vtk_netcdf_mangle.h, not sure why/how
you missed it.  My experience with updating VTK's freetype is that one
must regenerate the symbol list on all the major platforms and merge the
results.  Some symbols seem to only be exported on some OSes, see my
comments in vtk_freetype_mangle.h.

Not sure about the other symbols.  "utf8proc" looks like 3rd party code
used by NetCDF itself.  I wonder if these symbols should not be exported
at all, I'm guessing they are not part of NetCDF's public API.

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 vtkusers mailing list