I have entered this into our bug tracker. Just reference BZ-2213. Allen
> And to go back to my original point: If I use CMake (with any version of > 1.8.x) I get undefined externals for functions with _shared_ in the middle > of their names. > > > Looking closer -- it appears that there's a number of functions defined I > H5Oshared.h that get renamed using the C Preprocessor. > > Looking at the pre-processed source code, I'd say there's actually a > bug/feature in the OS X linker that's causing this problem. A method is > defined static in H5Oshared.h, and then a pointer to the function is used > to initialize a structure member. > > This problem goes away if I remove the 'static H5_inline' from the > function definitions in H5Oshared.h > > As it happens it seems like there were some contradictory things going on > here: > > 1. If you declare a function 'inline' and then use it's address, it can't > be inlined. > 2. If the function is static, there is no need to rename it in separate > compilation units. If you go to the trouble of renaming it, it doesn't > need to be static. > > If I remove the 'static H5_inline' from the function definitions in > H5Oshared.h, the library builds on OS X with CMake. > > This doesn't explain why it DOES build if you use the autoconf-generated > Makefiles. > > My brain hurts! > > On 3/15/11 2:08 PM, "Williams, Norman K" <[email protected]> > wrote: > > > > >./src/H5Osdspace.c:#define H5O_SHARED_ENCODE H5O_sdspace_shared_encode > >./src/H5Osdspace.c: H5O_sdspace_shared_encode, /* encode message */ > > > > > >What gives? > > > >Linking C shared library ../bin/libhdf5.dylib > >Undefined symbols: > > "_H5O_sdspace_shared_encode", referenced from: > > _H5O_MSG_SDSPACE in H5Osdspace.c.o > > > > ________________________________ > Notice: This UI Health Care e-mail (including attachments) is covered by the > Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential > and may be legally privileged. If you are not the intended recipient, you > are hereby notified that any retention, dissemination, distribution, or > copying of this communication is strictly prohibited. Please reply to the > sender that you have received the message in error, then delete it. Thank > you. > ________________________________ > > _______________________________________________ > Hdf-forum is for HDF software users discussion. > [email protected] > http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org >
_______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
