|
[Sponsors] |
October 27, 2018, 18:47 |
build CGNS with HDF5
|
#1 |
Senior Member
Tom-Robin Teschner
Join Date: Dec 2011
Location: Cranfield, UK
Posts: 211
Rep Power: 16 |
I noticed that my mesh generator of choice has switched writing CGNS files from ADF to HDF5 to store data. I am not able to change that as it seems in the mesh generator so I have to compile CGNS now with HDF5. I got HDF5 installed and ran make check-install which successfully passed, so I am quite confident that I got HDF5 installed properly.
Now my problems start when trying to compile the CGNS library together with HDF5. Here is what I did so far (I am on ubuntu). Build HDF5 into the default directory (which is inside the parent directory) and then have CGNS point to that location, i.e. I build HDF5 with ./configure, make, make install (make check-install) and then build CGNS with ./configure --with-hdf5=/path/to/hdf5, where /path/to/hdf5 is the top level folder containing the inlcude/ and lib/ directories. I also tried setting the LDFLAGS and LIBS flag as an LDFLAGS="-L/path/to/lib" LIBS="-lhdf5" ./configure, but this didn't work either, in fact, the compilation aborts during configure already. I also went another direction, compiling hdf5 into my /usr/local (as well as into /usr/local/hdf5) directory, both of which are inside my PATH variable (echo $PATH confirmed this) and then have building CGNS with ./configure --with-hdf5=/usr/local (and also with /usr/local/hdf5), I get the same error as before. Specifically, when doing the two routes above, ./configure [OPTIONS] executes fine and creates a Makefile. When I do make, I always get an error message when trying to build the cgnstools of the sort: Code:
gcc -g -O2 -I.. -o cgnslist cgnslist.o getargs.o ../lib/libcgns.a /usr/local/hdf5/lib/libhdf5.a -lm /usr/local/hdf5/lib/libhdf5.a(H5PLint.o): In function `H5PL__open': H5PLint.c:(.text+0x3c3): undefined reference to `dlopen' H5PLint.c:(.text+0x3dc): undefined reference to `dlsym' H5PLint.c:(.text+0x442): undefined reference to `dlclose' H5PLint.c:(.text+0x4a1): undefined reference to `dlerror' /usr/local/hdf5/lib/libhdf5.a(H5PLint.o): In function `H5PL__close': H5PLint.c:(.text+0x577): undefined reference to `dlclose' /usr/local/hdf5/lib/libhdf5.a(H5PLplugin_cache.o): In function `H5PL__find_plugin_in_cache': H5PLplugin_cache.c:(.text+0x368): undefined reference to `dlsym' /usr/local/hdf5/lib/libhdf5.a(H5Zdeflate.o): In function `H5Z_filter_deflate': H5Zdeflate.c:(.text+0x135): undefined reference to `inflateInit_' H5Zdeflate.c:(.text+0x165): undefined reference to `inflate' H5Zdeflate.c:(.text+0x188): undefined reference to `inflateEnd' H5Zdeflate.c:(.text+0x202): undefined reference to `compress2' H5Zdeflate.c:(.text+0x2ac): undefined reference to `inflateEnd' H5Zdeflate.c:(.text+0x43a): undefined reference to `inflateEnd' collect2: error: ld returned 1 exit status Makefile:25: recipe for target 'cgnslist' failed make[1]: *** [cgnslist] Error 1 make[1]: Leaving directory '/mnt/c/Users/Tom/Documents/coding/libraries/CGNS-master/src/tools' Makefile:65: recipe for target 'tools' failed make: *** [tools] Error 2 Seems like I am missing something but I can't see it at the moment, any suggestions? |
|
October 28, 2018, 06:23 |
|
#2 |
Senior Member
Tom-Robin Teschner
Join Date: Dec 2011
Location: Cranfield, UK
Posts: 211
Rep Power: 16 |
well, I managed myself in the end. Just in case somebody has the same problem and arrives at this thread, the error is coming because hdf5 can not find the libraries libld.a and libz.a. So during configuration of CGNS, those libraries need to be past along:
LIBS="-ldl -lz" ./configure --with-hdf5=/path/to/hdf5 In my case, i build hdf5 into /usr/local/hdf5 (./configure --prefix=/usr/local/hdf5) so that the above command becomes LIBS="-ldl -lz" ./configure --with-hdf5=/usr/local/hdf5 It seems hdf5 already builds libld.a by default, but not libz.a (https://zlib.net/), so I needed to download and build that first. Got there in the end though, it seems that the newest version (as of now) changed a bit in that some libraries need to be explicitly linked (http://hdf-forum.184993.n3.nabble.co...td4026300.html) |
|
January 31, 2019, 16:17 |
|
#3 |
New Member
Trushant Patel
Join Date: Feb 2017
Posts: 4
Rep Power: 9 |
Thank you! I was having the same problem, and this worked for me!!
Thanks, Trushant Patel |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
change CGNS export from hdf5 to adf | t.teschner | Pointwise & Gridgen | 5 | November 2, 2018 10:04 |
cgns & hdf5 | pankos | Main CFD Forum | 0 | September 25, 2017 10:45 |
HDF5 or ADF? | nba1942 | Pointwise & Gridgen | 2 | July 16, 2015 13:19 |
Building from Source on Windows using Cygwin64 | ericthefatguy | SU2 | 2 | May 12, 2015 19:23 |
How could I use CGNS with HDF5 | codezy | SU2 | 1 | April 8, 2014 03:26 |