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

Reply via email to