On Mon, 2006-11-27 at 15:48 +0100, Fabian Groffen wrote:
> On 24-11-2006 17:56:33 +0100, Michael Haubenwallner wrote:
> > Thing is, current compiler's libdir is before the others
> > in /etc/ld.so.conf, resulting in that ones being loaded if version
> > matches.
> > This is same as what would be when we copy libstdc++ to prefix/lib.
> 
> libgcj has the same problem.  Still I think it's pretty weird how this
> is done.  I much more like the Darwin way in this sense where for every
> lib being linked to, it's path is stored.  Sort of automatic rpath for
> every lib found.

This is done on HP-UX and AIX too, and breaks libtool here.
Because: If there is one sharedlib and an executable (or another
sharedlib) within one package, which is installed into some DESTDIR=$D,
the second binary (sharedlib or exe) will be relinked during install by
libtool against the first sharedlib found in $ED/usr/lib.
Now, if the linker records every argument to '-L' into the second
binary, the resulting binary always searches $ED/usr/lib instead of
$EPREFIX/usr/lib.

How does this work on Darwin:
Does darwin's libtool always pass the correct -R to the link step ?
Or is the second binary's DT_RUNPATH updated after link to remove $D ?

/haubi/

-- 
[EMAIL PROTECTED] mailing list

Reply via email to