NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
I've noticed that when building statically linked executables the order of the link options is important. For instance: $ g++ -static -L... -I... foo.c -lnetcdf -lhdf5 -lhdf5_hl -lm -lz -o foo /usr/local/lib/libhdf5_hl.a(H5LT.o): In function `H5LT_dtype_to_text': H5LT.c:(.text+0x26e4): undefined reference to `H5Tget_cset' H5LT.c:(.text+0x290b): undefined reference to `H5Tset_cset' H5LT.c:(.text+0x2a55): undefined reference to `H5Tset_cset' H5LT.c:(.text+0x2c4f): undefined reference to `H5Tget_tag' /usr/local/QC/lib/libhdf5_hl.a(H5LTparse.o): In function `H5LTyyparse': H5LTparse.c:(.text+0xe85): undefined reference to `H5Tset_tag' H5LTparse.c:(.text+0x1077): undefined reference to `H5Tset_cset' collect2: ld returned 1 exit status However this works: $ g++ -static -L... -I... foo.c -lnetcdf -lhdf5_hl -lhdf5 -lm -lz -o foo Is this expected and if so is it documented anywhere? Thanks, Stephen. --- Stephen Pascoe +44 (0)1235 445980 British Atmospheric Data Centre Rutherford Appleton Laboratory -- Scanned by iCritical.
netcdfgroup
archives: