libtool
[Top][All Lists]
Advanced

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

Re: RFC: proposal for indirect deplibs


From: Scott James Remnant
Subject: Re: RFC: proposal for indirect deplibs
Date: Fri, 26 Nov 2004 06:32:39 +0000

On Wed, 2004-11-24 at 10:19 +0100, Ralf Wildenhues wrote:

> Libtool and inter-library dependencies
> ======================================
> 
> needed-following linker:
> A system with a needed-following linker has a means to record
> dependencies on other libraries within a library (based on the soname of
> the dependency library), and a linker that uses this information to load
> dependent libraries.  Solaris and Linux are examples of this, [
> prominent counter-example ].
> 
I always consider Solaris the prominent counter-example, though my
information may be out of date.  Can you demonstrate which versions of
Solaris do and don't have link-loaders that follow NEEDED?

It may be that they fixed it, but didn't add appropriate NEEDEDs to some
of their shipped libraries.  We'll need to take this into account if
that's the case.

> This has lead to subtle problems on such systems when dependent
> libraries are recompiled against different versions of its dependencies.
> Multiple versions of a library may be linked in the same output,
> resulting in a broken link.
> [ insert example from Scott ]
> 
Generally it's not a "multiple versions may be linked" problem, because
you have that exact same problem when you don't link them all.  They
still both get loaded into the address space.

The problem is when you have a SONAME change in a low-level library
(such as libpng) in a very large stack (such as GNOME or KDE).  The
low-level library is only being used by the libraries that link it, yet
you have to recompile the entire desktop environment to move to the new
library as everything directly linked it.

By only linking the actually declared dependencies, you only need
recompile the libraries that declare dependencies on libpng itself.

Scott
-- 
Have you ever, ever felt like this?
Had strange things happen?  Are you going round the twist?

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

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