libtool
[Top][All Lists]
Advanced

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

Re: Running into cross-compilation issues with libtool (and autoconf) wi


From: Nick Bowler
Subject: Re: Running into cross-compilation issues with libtool (and autoconf) with libusb-0.1.12
Date: Fri, 30 Oct 2009 16:53:58 -0400
User-agent: Mutt/1.5.20 (2009-06-14)

On 13:19 Fri 30 Oct     , Philip A. Prindeville wrote:
> The problem is that this is an early linkage on the build host, where
> the eventual DESTDIR hasn't yet been specified, but the resultant
> libusbpp.la ends up looking like:

I suspect that you have two libtool libraries in the same source tree,
with one linked against the other.  Chances are, the compiled binaries
in the .libs directory are perfectly fine, and libtool is destroying
them when you run 'make DESTDIR=/path/to/staging/dir install'.

So we have libfoo.la and libbar.la, libbar links with libfoo and.
Furthermore, you have a version of libfoo already installed on the host
system, in /usr/lib.  You cross-compile the package, using
--prefix=/usr/lib (since that is where it will finally end up).

Then you do 'make DESTDIR=/path/to/staging/dir install', and libtool
decides to re-link the libraries against the libraries in the final
installed location.  In this case, it is /usr/lib.  The problem is that
the libfoo in /usr/lib is the wrong one, since the cross-compiled libfoo
never got installed there!

The workaround here is to manually copy the libraries from .libs into
your staging directory.  IMHO the fix is to make libtool not re-link
anything if DESTDIR is set -- correct me if I'm wrong, but it seems to
me that the current behaviour cannot possibly be correct on any
platform, even on the ones that require re-linking.





reply via email to

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