Hi David, The compilation of the netcdf is correct compared to the link you shared:
"-L/home/jesse/Programs/hdf5/lib /home/jesse/Programs/hdf5/lib/libhdf5_hl.so /home/jesse/Programs/hdf5/lib/libhdf5.so" I am not use how to get the ExodusII compilation, since it uses cmake, of which I am fairly ignorant. However, it would surprise me, since my compilation succeeds unlike in that post - it's just when I am accessing the shared ExodusII library. In addition, with the cmake, there haven't been errors like this previously. Jesse On Wed, Oct 8, 2014 at 3:40 PM, David Brooks <[email protected]> wrote: > Hmm, the post at > http://www.unidata.ucar.edu/mailing_lists/archives/netcdfgroup/2010/msg00389.html > suggests that the reason may be the link order of HDF5 libraries when > either libnetcdf or libexodus was built. > > > Regards, > Dave > > > On 9/10/14 9:00 am, Jesse Johns wrote: > > Hello Mark: > > Thank you for the advice. > > There are actually a few approaches that I took. First, with the Python > API that comes with the ExodusII library, there are some options to load > the libraries, so I included the following: > > EXODUS_PATH = findLibExoPath() > HDF_PATH = "/home/jesse/Programs/hdf5/lib" > > NETCDF_SO = "/home/jesse/Programs/netcdf/lib" + "/libnetcdf.so" > EXODUS_SO = EXODUS_PATH + "libexodus.so" > HDF_SO = HDF_PATH + "/libhdf5.so" > HDF_HL_SO = HDF_PATH + "/libhdf5_hl.so" > > HDF5_LIB = cdll.LoadLibrary(HDF_SO) > HDF5_HL_LIB = cdll.LoadLibrary(HDF_HL_SO) > NETCDF_LIB = cdll.LoadLibrary(NETCDF_SO) > EXODUS_LIB = cdll.LoadLibrary(EXODUS_SO) > > In using the library, I get the same error. I went ahead and added an > environmental variable in bashrc: > > export LD_LIBRARY_PATH=/home/jesse/Programs/hdf5/lib:$LD_LIBRARY_PATH > > Tried calling using API, same error (this should be equivalent to what > you suggested to do). > > Lastly, I just recompiled everything with the environmental variable set > explicitly instead of just calling them with compiler flags. Still, I get > the same error when using the API. > > The traceback goes to the API when I am calling the Exodus shared library: > > EXODUS_LIB = cdll.LoadLibrary(EXODUS_SO) > File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary > return self._dlltype(name) > File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__ > self._handle = _dlopen(self._name, mode) > OSError: /home/jesse/Programs/exodus/lib/libexodus.so: undefined symbol: > H5Tset_tag > > So, I do think you're right that the HDF5 library is not being loaded > correctly. There are some conflicts if I were to install the libraries in > the default library paths, but it might be worth writing a module script > that shuffles all that around... I'm very much open to every suggestion, > however. I've been working on this for a while. > > Thank you, > > Jesse > > > On Wed, Oct 8, 2014 at 2:11 PM, Miller, Mark C. <[email protected]> wrote: > >> Your forms post indicates you downloaded and installed hdf5 yourself. >> And, from the looks of it you are using shared librarys (.so files). >> >> So, I am guessing that have compiled some executable that uses >> libexodus.so and are now hitting this error when running that executable. >> Is that right? >> >> I am guessing you need to set LD_LIBRARY_PATH env. variable to tell the >> loader where to find the libhdf5.so file you installed and then built >> exodus against. >> >> If you are on Linux and your app was named 'foo' and you had installed >> HDF5 to /homes/gorfo/my_installs/hdf5, then try a command like⦠>> >> env LD_LIBRARY_PATH=/homes/gorfo/my_installs/hdf5/lib ./foo >> >> and see if that (or some variation thereof) doesn't work >> >> Mark >> >> >> From: Jesse Johns <[email protected]> >> Reply-To: HDF Users Discussion List <[email protected]> >> Date: Wednesday, October 8, 2014 10:54 AM >> To: "[email protected]" <[email protected]> >> Subject: [Hdf-forum] HDF5 compilation with ExodusII >> >> Hello, >> >> I am having some problems with getting a compilation of the ExodusII >> finite-element libraries working correctly. The forum post that I have >> here: >> >> http://forums.linuxmint.com/viewtopic.php?f=47&t=178562 >> >> Will be explain things in some detail. The main issue is the follow error >> that I get: >> >> OSError: ~/Programs/exodusii/lib/libexodus.so: undefined symbol: >> H5Tset_tag >> >> I am not sure how to progress further. >> >> Thank you, >> >> Jesse >> >> >> _______________________________________________ >> Hdf-forum is for HDF software users discussion. >> [email protected] >> >> http://mail.lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org >> Twitter: https://twitter.com/hdf5 >> > > > > _______________________________________________ > Hdf-forum is for HDF software users > [email protected]http://mail.lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org > Twitter: https://twitter.com/hdf5 > > > > _______________________________________________ > Hdf-forum is for HDF software users discussion. > [email protected] > > http://mail.lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org > Twitter: https://twitter.com/hdf5 >
_______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org Twitter: https://twitter.com/hdf5
