libtool
[Top][All Lists]
Advanced

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

Re: [sr #107416] relink with a DESTDIR install mistakenly links against


From: Nick Bowler
Subject: Re: [sr #107416] relink with a DESTDIR install mistakenly links against old installed libraries rather than those in DESTDIR
Date: Mon, 5 Jul 2010 12:13:06 -0400
User-agent: Mutt/1.5.20 (2009-06-14)

On 19:29 Fri 02 Jul     , Tim Mooney wrote:
> HOWEVER, if you do a "DESTDIR" install, the relink step for libb will fail,
> because libtool doesn't prepend the DESTDIR library directory to the library
> search path, so when libb is relinked, it finds the liba from package-1.0
> that's already installed on the system.  Since the 1.0 version of liba doesn't
> have function "a_2", the relink fails.

A relink failure would be a boon in the context of this issue, because
the user notices right away that something has gone awry.  It can cause
subtle problems that don't go noticed until (perhaps much) later.

My first encounter with this issue was with cross-compilation, where I
ended up with a library that had a shared library dependency on the
build system's C library, rather than that of the host system.  When I
later attempted to build a program that linked against that library, the
linker saw this dependency and tried to link the program against both
the build and host system's C libraries.  The result was an extremely
cryptic error message about thread-local storage.

When I eventually tracked it down to a particular faulty library, I
tried to find out why the library got linked against the build system's
C library.  This turned out to be very tricky, because the library was
perfectly fine at every step _except_ for 'make install', which was
taking a perfectly fine library and writing a totally broken library to
the install location.

-- 
Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)



reply via email to

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