[Nexus] Problems installing NeXus on Linux

Mark Rivers rivers at cars.uchicago.edu
Tue Aug 11 19:08:24 BST 2009


Folks,

 

I am having problems installing NeXus on Linux.  I have a Fedora Core 10
system. I followed the instructions on the NeXus site:

 

http://www.nexusformat.org/Download#NeXus_Binary_Distributions

 

I did the:

 

yum install hdf hdf-devel hdf5 hdf5-devel mxml mxml-devel

 

I then tried to install Nexus as directed but it fails:

 

corvette:~>sudo rpm -Uhv nexus-4.1.0-0.i386.rpm 

[sudo] password for epics: 

error: Failed dependencies:

        libhdf5.so.0 is needed by nexus-4.1.0-0.i386

 

It cannot find libhdf5.so.0, which indeed does not exist.  These are the
hdf5 files and links in /usr/lib.

 

corvette:~>ls -l /usr/lib/libhdf5*

-rw-r--r-- 1 root root 3434232 Jun  5  2008 /usr/lib/libhdf5.a

lrwxrwxrwx 1 root root      16 Sep  4  2008 /usr/lib/libhdf5.so ->
libhdf5.so.5.0.1

lrwxrwxrwx 1 root root      16 Sep  4  2008 /usr/lib/libhdf5.so.5 ->
libhdf5.so.5.0.1

-rwxr-xr-x 1 root root 2487304 Jun  5  2008 /usr/lib/libhdf5.so.5.0.1

-rw-r--r-- 1 root root  572100 Jun  5  2008 /usr/lib/libhdf5_cpp.a

lrwxrwxrwx 1 root root      20 Sep  4  2008 /usr/lib/libhdf5_cpp.so ->
libhdf5_cpp.so.0.0.0

lrwxrwxrwx 1 root root      20 Sep  4  2008 /usr/lib/libhdf5_cpp.so.0 ->
libhdf5_cpp.so.0.0.0

-rwxr-xr-x 1 root root  400808 Jun  5  2008
/usr/lib/libhdf5_cpp.so.0.0.0

-rw-r--r-- 1 root root  267126 Jun  5  2008 /usr/lib/libhdf5_fortran.a

lrwxrwxrwx 1 root root      24 Sep  4  2008 /usr/lib/libhdf5_fortran.so
-> libhdf5_fortran.so.0.0.0

lrwxrwxrwx 1 root root      24 Sep  4  2008
/usr/lib/libhdf5_fortran.so.0 -> libhdf5_fortran.so.0.0.0

-rwxr-xr-x 1 root root  223128 Jun  5  2008
/usr/lib/libhdf5_fortran.so.0.0.0

-rw-r--r-- 1 root root  138888 Jun  5  2008 /usr/lib/libhdf5_hl.a

lrwxrwxrwx 1 root root      19 Sep  4  2008 /usr/lib/libhdf5_hl.so ->
libhdf5_hl.so.0.0.0

lrwxrwxrwx 1 root root      19 Sep  4  2008 /usr/lib/libhdf5_hl.so.0 ->
libhdf5_hl.so.0.0.0

-rwxr-xr-x 1 root root  114968 Jun  5  2008 /usr/lib/libhdf5_hl.so.0.0.0

-rw-r--r-- 1 root root    6454 Jun  5  2008 /usr/lib/libhdf5_hl_cpp.a

lrwxrwxrwx 1 root root      23 Sep  4  2008 /usr/lib/libhdf5_hl_cpp.so
-> libhdf5_hl_cpp.so.0.0.0

lrwxrwxrwx 1 root root      23 Sep  4  2008 /usr/lib/libhdf5_hl_cpp.so.0
-> libhdf5_hl_cpp.so.0.0.0

-rwxr-xr-x 1 root root    7492 Jun  5  2008
/usr/lib/libhdf5_hl_cpp.so.0.0.0

-rw-r--r-- 1 root root   56366 Jun  5  2008 /usr/lib/libhdf5hl_fortran.a

lrwxrwxrwx 1 root root      26 Sep  4  2008
/usr/lib/libhdf5hl_fortran.so -> libhdf5hl_fortran.so.0.0.0

lrwxrwxrwx 1 root root      26 Sep  4  2008
/usr/lib/libhdf5hl_fortran.so.0 -> libhdf5hl_fortran.so.0.0.0

-rwxr-xr-x 1 root root   51400 Jun  5  2008
/usr/lib/libhdf5hl_fortran.so.0.0.0

 

So I have libhdf5.so.5.0.1 as the actual file.  Making a symbolic link
to that file from libhdf5.so.0 does not help, same rpm error as above.


 

(I also installed hdf5-static and hdf-devel-static because I want those
libraries too).

 

I forced rpm to install NeXus with the -nodeps to ignore the problem.

 

Once I do that I try to link my application, and I get a bunch of
unresolved symbols.  It looks like it could be an HDF5 version problem.
One of the undefined symbols is H5Acreate.  If I run "nm" on libNeXus.a
I see that it has an undefined symbol H5Acreate:

corvette:1-5beta/ADApp/simDetectorSrc>nm ../../lib/linux-x86/libNeXus.a
| grep H5Acreate

         U H5Acreate

 

If I run nm on libhdf5.a I see that it defines some similar symbols,
H5Acreate1, H5Acreate2, H5Acreate_by_name, but not H5Acreate.

 

corvette:1-5beta/ADApp/simDetectorSrc>nm /usr/lib/libhdf5.a | grep
H5Acreate

00006990 T H5Acreate2

00006570 T H5Acreate_by_name

00000a90 T H5Acreate1

 

Any idea what the problem is?

 

Thanks,

Mark

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.nexusformat.org/pipermail/nexus/attachments/20090811/b43316e3/attachment.html 


More information about the NeXus mailing list