libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libtool "no symlinked libs" patch


From: Ralf Wildenhues
Subject: Re: libtool "no symlinked libs" patch
Date: Sun, 27 Nov 2005 11:14:48 +0100
User-agent: Mutt/1.5.9i

[ Cc: to libtool mailing list.  This thread is at
  http://thread.gmane.org/gmane.os.openbsd.ports/14993
  and the interesting bit starts at the end of this post:
  http://article.gmane.org/gmane.os.openbsd.ports/15121 ]

* Ralf Wildenhues wrote on Sun, Nov 27, 2005 at 09:06:09AM CET:
> * Jacob Meuser wrote on Sun, Nov 27, 2005 at 05:42:07AM CET:
> > On Wed, Nov 23, 2005 at 05:04:07PM +0000, Ralf Wildenhues wrote:
> > > Marc Espie <espie <at> nerim.net> writes:
> > 
> > > > I'm very annoyed at
> > > > libtool --mode=link cc -L/usr/local/lib -o foo foo.o ./libbar.la
> > > > expanding into some stuff like:
> > > > cc -L/usr/local/lib -L. -o foo foo.o -lbar
> > > > which gets us the libbar installed under /usr/local/lib instead of the 
> > > > one
> > > > we just built...
> > > 
> > > Genuine bug in Libtool's OpenBSD support, most likely some wrong 
> > > assumption
> > > about which path overrides which.  Current branch-1-5 does not do this on
> > > GNU/Linux nor on FreeBSD -- sorry, I don't currently have access to 
> > > OpenBSD.
> > > 
> > > For static libbar, it creates on both systems
> > >   gcc -o foo foo.o  ./.libs/libbar.a
> > > and for shared libbar it creates
> > >   gcc -o .libs/foo foo.o  ./.libs/libbar.so -Wl,--rpath -Wl,/tmp/inst
> > 
> > I think you are not understanding Marc's point.
> 
> No, but I pasted the output in a misleading way.
> 
> > what happens with -L/usr/local/lib?
> 
> Libtool knows that the library is uninstalled, because this information
> is encoded in libbar.la, hence knows to hardcode it _even_ when the
> installed path is given first.  Attached an example.  Please modify so
> it fails on OpenBSD.

OK.  This fails on OpenBSD because of hardcode_direct=yes, all branches,
I assume, because then libtool will create
  cc -L/usr/local/lib -L.libs ..
then.

Call for help: I need access to an OpenBSD box or someone with access to
help me debug this (off-list), because the failure is not exposed with
GNU ld.

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]