Dear all, Following the issue raised and considering Elena's suggestion on this issue, I tried an experiment on an Ubuntu 12.04 x64 system. The "h5fc -show" output is like this on the system:
gfortran -m64 -I/usr/local/hdf5-1.8.11/include -L/usr/local/hdf5-1.8.11/lib /usr/local/hdf5-1.8.11/lib/libhdf5hl_fortran.a /usr/local/hdf5-1.8.11/lib/libhdf5_hl.a /usr/local/hdf5-1.8.11/lib/libhdf5_fortran.a /usr/local/hdf5-1.8.11/lib/libhdf5.a -lz -lrt -ldl -lm -Wl,-rpath -Wl,/usr/local/hdf5-1.8.11/lib Using h5fc to compile the h5ex_t_arrayatt_F03.f90 example file from HDF5 website as: $ h5fc h5ex_t_arrayatt_F03.f90 was successful. However, replacing h5fc with its whole output above like: $ gfortran -m64 -I/usr/local/hdf5-1.8.11/include -L/usr/local/hdf5-1.8.11/lib /usr/local/hdf5-1.8.11/lib/libhdf5hl_fortran.a /usr/local/hdf5-1.8.11/lib/libhdf5_hl.a /usr/local/hdf5-1.8.11/lib/libhdf5_fortran.a /usr/local/hdf5-1.8.11/lib/libhdf5.a -lz -lrt -ldl -lm -Wl,-rpath -Wl,/usr/local/hdf5-1.8.11/lib h5ex_t_arrayatt_F03.f90 to compile the same example file fails with the output below: /tmp/ccAADKQ7.o: In function `MAIN__': h5ex_t_arrayatt_F03.f90:(.text+0x1f): undefined reference to `__h5lib_MOD_h5open_f' h5ex_t_arrayatt_F03.f90:(.text+0x11e): undefined reference to `__h5f_MOD_h5fcreate_f' h5ex_t_arrayatt_F03.f90:(.text+0x151): undefined reference to `__h5t_MOD_h5tarray_create_f' h5ex_t_arrayatt_F03.f90:(.text+0x173): undefined reference to `__h5t_MOD_h5tarray_create_f' h5ex_t_arrayatt_F03.f90:(.text+0x18b): undefined reference to `__h5s_MOD_h5screate_f' h5ex_t_arrayatt_F03.f90:(.text+0x1db): undefined reference to `__h5d_MOD_h5dcreate_f' h5ex_t_arrayatt_F03.f90:(.text+0x1f1): undefined reference to `__h5s_MOD_h5sclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x217): undefined reference to `__h5s_MOD_h5screate_simple_f' h5ex_t_arrayatt_F03.f90:(.text+0x25a): undefined reference to `__h5a_MOD_h5acreate_f' h5ex_t_arrayatt_F03.f90:(.text+0x27d): undefined reference to `__h5a_provisional_MOD_h5awrite_ptr' h5ex_t_arrayatt_F03.f90:(.text+0x290): undefined reference to `__h5a_MOD_h5aclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x2a3): undefined reference to `__h5d_MOD_h5dclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x2b9): undefined reference to `__h5s_MOD_h5sclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x2cc): undefined reference to `__h5t_MOD_h5tclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x2df): undefined reference to `__h5t_MOD_h5tclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x2f2): undefined reference to `__h5f_MOD_h5fclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x31b): undefined reference to `__h5f_MOD_h5fopen_f' h5ex_t_arrayatt_F03.f90:(.text+0x340): undefined reference to `__h5d_MOD_h5dopen_f' h5ex_t_arrayatt_F03.f90:(.text+0x365): undefined reference to `__h5a_MOD_h5aopen_f' h5ex_t_arrayatt_F03.f90:(.text+0x37c): undefined reference to `__h5a_MOD_h5aget_type_f' h5ex_t_arrayatt_F03.f90:(.text+0x391): undefined reference to `__h5t_MOD_h5tget_array_dims_f' h5ex_t_arrayatt_F03.f90:(.text+0x3ab): undefined reference to `__h5a_MOD_h5aget_space_f' h5ex_t_arrayatt_F03.f90:(.text+0x3c7): undefined reference to `__h5s_MOD_h5sget_simple_extent_dims_f' h5ex_t_arrayatt_F03.f90:(.text+0x642): undefined reference to `__h5t_MOD_h5tarray_create_f' h5ex_t_arrayatt_F03.f90:(.text+0x665): undefined reference to `__h5a_provisional_MOD_h5aread_ptr' h5ex_t_arrayatt_F03.f90:(.text+0x9be): undefined reference to `__h5a_MOD_h5aclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x9d1): undefined reference to `__h5d_MOD_h5dclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x9e7): undefined reference to `__h5s_MOD_h5sclose_f' h5ex_t_arrayatt_F03.f90:(.text+0x9fa): undefined reference to `__h5t_MOD_h5tclose_f' h5ex_t_arrayatt_F03.f90:(.text+0xa0d): undefined reference to `__h5t_MOD_h5tclose_f' h5ex_t_arrayatt_F03.f90:(.text+0xa20): undefined reference to `__h5f_MOD_h5fclose_f' collect2: ld returned 1 exit status How come could this be possible? It does not make any sense to me. I would be glad if you share your thoughts on the issue. Best regards, Ekin Akoglu On 20 June 2013 16:47, Elena Pourmal <[email protected]> wrote: > Please check that you use -ldl when you link your application (or use > h5cc!) > > We introduced dynamical loading of the HDF5 filters in HDF5 1.8.11 and > this library is required now. > > Elena > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Elena Pourmal The HDF Group http://hdfgroup.org > 1800 So. Oak St., Suite 203, Champaign IL 61820 > 217.531.6112 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > > > On Jun 20, 2013, at 9:40 AM, Michael Jackson wrote: > > I have built HDF5 1.8.11 on Ubuntu Linux x64 12.04 using static libraries. > I am now trying to compile my program against this build and I am getting > the following errors: > > > make[1]: *** Waiting for unfinished jobs.... > /home/mjackson/DREAM3D_SDK/hdf5-1.8.11/lib/libhdf5.a(H5PL.c.o): In > function `H5PL_term_interface': > H5PL.c:(.text+0x9d): undefined reference to `dlclose' > /home/mjackson/DREAM3D_SDK/hdf5-1.8.11/lib/libhdf5.a(H5PL.c.o): In > function `H5PL_load': > H5PL.c:(.text+0x2a5): undefined reference to `dlsym' > H5PL.c:(.text+0x38c): undefined reference to `dlopen' > H5PL.c:(.text+0x3a5): undefined reference to `dlsym' > H5PL.c:(.text+0x4d4): undefined reference to `dlclose' > H5PL.c:(.text+0x551): undefined reference to `dlerror' > H5PL.c:(.text+0x745): undefined reference to `dlclose' > collect2: ld returned 1 exit status > make[2]: *** [Bin/H5UtilitiesTest] Error 1 > > I have to admit my C++ Error Fu is not strong today and I am missing what > is wrong. I don't remember having this issue on other systems where I have > HDF5 built as a static library. > > ... 3 Minutes later on Google..... > > http://www.unidata.ucar.edu/support/help/MailArchives/netcdf/msg11875.html > > So just as a reminder for those affected that we may need to update our > CMake/M4/Configure scripts to deal with the new features of HDF5 1.8.11 > > Thanks > ___________________________________________________________ > Mike Jackson Principal Software Engineer > BlueQuartz Software Dayton, Ohio > [email protected] www.bluequartz.net > > > _______________________________________________ > Hdf-forum is for HDF software users discussion. > [email protected] > http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org > > > > _______________________________________________ > Hdf-forum is for HDF software users discussion. > [email protected] > http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org >
_______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
