Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: Re: [hwloc-devel] RPATH issues when building in Fedora 18
From: Samuel Thibault (samuel.thibault_at_[hidden])
Date: 2013-04-23 16:54:51


Brice Goglin, le Tue 23 Apr 2013 22:44:08 +0200, a écrit :
> Le 23/04/2013 22:26, Samuel Thibault a écrit :
> >> If /usr/lib64 is the default path for 64bits libs on Fedora, shouldn't somebody
> >> take care of removing the corresponding rpath too?
> > libtool should be already doing that.
>
> It doesn't on my Debian. The libtool script says:
>
> # Compile-time system search path for libraries.
> sys_lib_search_path_spec="/usr/lib/gcc/x86_64-linux-gnu/4.7 /usr/lib/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib "

Yes, these are the search dirs on Debian. /usr/lib64 and /lib64 are not
among these.

> while on CentOS 6.3 it says:
>
> sys_lib_search_path_spec="/usr/lib/gcc/x86_64-redhat-linux/4.4.6 /usr/lib64 /lib64 "

So libtool should be dropping the /usr/lib64 rpath.

> Not sure that this is the line that matters here,

IIRC that's it.

> but it shows that distros didn't patch libtool the same :/

Yes, because they configure they toolchain differently. But IIRC it's
not by patching, but detecting what is actually there. Or is there still
some hardcoding there?

> >> This is likely related (but the reversed case) to the comment about Fedora in
> >> http://wiki.debian.org/RpathIssue. One link on that page says that rerunning
> >> libtoolize before configure may help. Can you try that? (maybe compare the new
> >> libtool script with the one from the hwloc tarball to check that some lib64
> >> things appeared?)
> >>
> >>
> >> â–¡ If the application uses a local copy of libtool, add the following
> >> lines to the spec after %configure:=> it will make tests FAIL (without
> >> this change, it runs just fine - all tests are PASSED)
> >>
> >> FAIL: test-hwloc-annotate.sh
> >> FAIL: test-hwloc-assembler.sh
> >> PASS: test-hwloc-calc.sh
> >> PASS: test-hwloc-distances.sh
> >> PASS: test-hwloc-distrib.sh
> >> FAIL: test-hwloc-info.sh
> >>
> >>
> >> I am not sure why some fail while the other succeed. You may need to set
> >> LD_LIBRARY_PATH to fix this?
> > The libtool script is supposed to automatically add it.
> >
>
> He followed the Fedora wiki advice about patching the libtool script (to
> disable rpath and remove LD_RUN_PATH).

Err, yes. But that does not matter: by "libtool script", I mean the one
created at link time, which represents the built binary, but is actually
just a wrapper around the .libs/binary

Samuel