libtool
[Top][All Lists]
Advanced

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

Re: removal of .la files from Debian and a possible solution to the libt


From: Kurt Roeckx
Subject: Re: removal of .la files from Debian and a possible solution to the libtool shared libs problem
Date: Sun, 30 Aug 2009 22:31:39 +0200
User-agent: Mutt/1.5.20 (2009-06-14)

On Tue, Aug 25, 2009 at 05:46:12PM +0300, Anssi Hannula wrote:
> 
> dependency_libs contains the dependencies of a library. These are needed
> when linking statically. These are also needed when linking dynamically,
> but only on certain systems (they are not needed on normal linux systems).
> 
> I think the proper way to solve this is to not link to dependency_libs
> when linking dynamically on systems where it is not needed to link to
> those. I haven't seen any correctly working patches that implement this.

Debian already ships a version that has link_all_deplibs set to
no, which already solves _some_ of the problems we have.  (It
also has it's issues.)

The reason we still have a problem is that the .la file contains
all the shared files that this lib, and recursively all the libs
they depends on, link to.  And when somewhere in the chain
something no longer links to a library we have to go and fix
all the libraries in between to get rid of the broken .la files.

So it currently seems to be easier to ship .la files with
dependency_libs set to an empty string.

I've mailed about this issue before.  What I think needs to
happen, and have proposed before, is:
- The .la file should only contain the libraries the current
  library links to
- Libtool should recursively read all the .la files in
  the .la file.

With that change only one .la file would need to be updated.

I have an implementation (in C) that does this.  And it atleast
finds some issues in the test suite that I've mailed about and
didn't get resolved yet.

I should probably also keep working on my version.


Kurt





reply via email to

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