On Oct 31, 2013, at 4:58 PM, Ekin Akoglu <[email protected]> wrote:

> Thank you, Elena. It works with the modification you have suggested. However, 
> one thing remains unclear to me. According to my HDF5 configuration, I have 
> both shared and static library support. But this issue only occured in Ubuntu 
> 12.04 x86_64 but not on Debian 7 x86_64 or Fedora 19 x86_64. Is this a bug of 
> HDF5 package or the OS?
> 
This I don't know :-) 

Allen just told me that Ubuntu is the only system that has static dl library. 
We will need to investigate. 

Elena 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Elena Pourmal  The HDF Group  http://hdfgroup.org   
1800 So. Oak St., Suite 203, Champaign IL 61820
217.531.6112
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Regards,
> 
> Ekin Akoglu
> 
> On 31 October 2013 22:48, Elena Pourmal <[email protected]> wrote:
> Hi Ekin,
> 
> "-show" is misleading (I will need to discuss it with the developers and see 
> how we can enhance it). I reproduced the problem on CentOS5.
> 
> If you run "h5fc -echo h5ex_t_arrayatt_F03.f90" you will see that there are 
> two steps:
> 
> 1. Compile to create an object file 
> 2. Link the object file to create executable
> 
> Try  the modified command like this (name of the source file should be BEFORE 
> linking flags)
> 
> $ gfortran -m64 -I/usr/local/hdf5-1.8.11/include h5ex_t_arrayatt_F03.f90 
> -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 
> 
> Elena
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Elena Pourmal  The HDF Group  http://hdfgroup.org   
> 1800 So. Oak St., Suite 203, Champaign IL 61820
> 217.531.6112
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> 
> 
> 
> On Oct 31, 2013, at 10:31 AM, Ekin Akoglu <[email protected]> wrote:
> 
>> Dear all,
>> 
>> Further, I would like to supplement my previous mail with my HDF5 
>> configuration. So as you will see below, both shared and static libraries 
>> are already enabled:
>> 
>>  SUMMARY OF THE HDF5 CONFIGURATION
>>         =================================
>> 
>> General Information:
>> -------------------
>>            HDF5 Version: 1.8.11
>>           Configured on: Thu Oct 31 12:03:54 CET 2013
>>           Configured by: eakoglu@nb-ekin
>>          Configure mode: production
>>             Host system: x86_64-unknown-linux-gnu
>>           Uname information: Linux nb-ekin 3.8.0-32-generic 
>> #47~precise1-Ubuntu SMP Wed Oct 2 16:19:35 UTC 2013 x86_64 x86_64 x86_64 
>> GNU/Linux
>>                Byte sex: little-endian
>>               Libraries: static, shared
>>          Installation point: /usr/local/hdf5-1.8.11
>> 
>> Compiling Options:
>> ------------------
>>                Compilation Mode: production
>>                      C Compiler: /usr/bin//gcc
>>                          CFLAGS: -O0
>>                       H5_CFLAGS: -std=c99 -pedantic -Wall -Wextra -Wundef 
>> -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align 
>> -Wwrite-strings -Wconversion -Waggregate-return -Wstrict-prototypes 
>> -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls 
>> -Wnested-externs -Winline -Wno-long-long -Wfloat-equal 
>> -Wmissing-format-attribute -Wmissing-noreturn -Wpacked 
>> -Wdisabled-optimization -Wformat=2 -Wendif-labels 
>> -Wdeclaration-after-statement -Wold-style-definition -Winvalid-pch 
>> -Wvariadic-macros -Wnonnull -Winit-self -Wmissing-include-dirs 
>> -Wswitch-default -Wswitch-enum -Wunused-macros -Wunsafe-loop-optimizations 
>> -Wc++-compat -Wstrict-overflow -Wlogical-op -Wlarger-than=2048 -Wvla 
>> -Wsync-nand -Wframe-larger-than=16384 -Wpacked-bitfield-compat 
>> -Wstrict-aliasing -Wstrict-overflow=5 -Wjump-misses-init 
>> -Wunsuffixed-float-constants -Wdouble-promotion -Wsuggest-attribute=const 
>> -Wtrampolines -O3 -fomit-frame-pointer -finline-functions
>>                       AM_CFLAGS: 
>>                        CPPFLAGS: 
>>                     H5_CPPFLAGS: -D_POSIX_C_SOURCE=199506L   -DNDEBUG 
>> -UH5_DEBUG_API
>>                     AM_CPPFLAGS: -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE 
>> -D_BSD_SOURCE 
>>                Shared C Library: yes
>>                Static C Library: yes
>>   Statically Linked Executables: no
>>                         LDFLAGS: 
>>                      H5_LDFLAGS: 
>>                      AM_LDFLAGS: 
>>           Extra libraries:  -lz -lrt -ldl -lm 
>>                 Archiver: ar
>>                Ranlib: ranlib
>>            Debugged Packages: 
>>             API Tracing: no
>> 
>> Languages:
>> ----------
>>                         Fortran: yes
>>                Fortran Compiler: /usr/bin//gfortran
>>           Fortran 2003 Compiler: yes
>>                   Fortran Flags: -m64
>>                H5 Fortran Flags:  
>>                AM Fortran Flags: 
>>          Shared Fortran Library: yes
>>          Static Fortran Library: yes
>> 
>>                             C++: no
>> 
>> Features:
>> ---------
>>                   Parallel HDF5: no
>>              High Level library: yes
>>                    Threadsafety: no
>>             Default API Mapping: v18
>>  With Deprecated Public Symbols: yes
>>          I/O filters (external): deflate(zlib)
>>          I/O filters (internal): shuffle,fletcher32,nbit,scaleoffset
>>                             MPE: no
>>                      Direct VFD: no
>>                         dmalloc: no
>> Clear file buffers before write: yes
>>            Using memory checker: no
>>          Function Stack Tracing: no
>>                            GPFS: no
>>       Strict File Format Checks: no
>>    Optimization Instrumentation: no
>>        Large File Support (LFS): yes
>> 
>> 
>> 
>> 
>> 
>> Regards,
>> 
>> Ekin Akoglu
>> 
>> On 31 October 2013 16:04, Ekin Akoglu <[email protected]> wrote:
>> 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
> 
> 
> _______________________________________________
> Hdf-forum is for HDF software users discussion.
> [email protected]
> http://mail.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

_______________________________________________
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