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
