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] <mailto:[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]
    <mailto:[email protected]>>
    Reply-To: HDF Users Discussion List <[email protected]
    <mailto:[email protected]>>
    Date: Wednesday, October 8, 2014 10:54 AM
    To: "[email protected]
    <mailto:[email protected]>"
    <[email protected] <mailto:[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] <mailto:[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

Reply via email to