libtool-patches
[Top][All Lists]
Advanced

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

Re: darwin library_names_spec


From: Gary V. Vaughan
Subject: Re: darwin library_names_spec
Date: Thu, 18 Dec 2003 10:33:56 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20030925 Thunderbird/0.3

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Albert Chin wrote:
| On Mon, Dec 08, 2003 at 03:52:42PM +0000, Gary V. Vaughan wrote:
|
|>-----BEGIN PGP SIGNED MESSAGE-----
|>Hash: SHA1
|>
|>Peter O'Gorman wrote:
|>| Even if you keep the old versions around, the dynamic linker can not
|>| find them, so they are never used unless you go playing with the
|>| symlinks by hand, it will only load libfoo.5.dylib, which in the normal
|>| scheme of things always points to the latest version of libfoo.5 that
|>| you installed.
|>|
|>| It is quite likely that other systems also have unnecessary symlinks,
|>| but I wouldn't have a clue as to which ones they are :)
|>
|>Quite.  Now that you have pointed out the additional symlink on darwin, I
|>can see the same problem on linux.
|>
|>Open questions to the list:  What is the purpose of creating a
|>libfoo.x.y.z.so when libfoo.so is enough for the compile time linker,
|>and all but the newest libfoo.x.y.z.so are ignored by the runtime linker?
|>Where does the libfoo.x.so symlink fit into this.
|
| Depends on the SONAME. I think we only need libfoo.so and the file
| that corresponds with SONAME.

That's what I had suspected.  A quick survey of some of the libraries in
/usr/lib on my linux system seems to show two trends:  libtool created
libraries have libfoo.so.x.y.z with soname libfoo.so.x, symlinked to
libfoo.so.x and libfoo.so; others have libbar.so.x with soname libbar.so.x,
symlinked to /libbar.so.x.y(.z)?/.

libz is one of the latter, and yet I can link to it with -lz...

| Of course, I don't know if all linkers search for libraries by SONAME.

I'm not even sure that some linkers won't consider libname.so.x as a match for
- -lname in the absence of libname.so itself... apparently this is the case on
my linux box.

My copy of linkers and loaders is in the post :-)

I think the next (post 1.6) alpha's should reduce the number of links kept
around and see if everything continues to work.  It seems to me that we only
need to keep one file with the latest edition of the library for the compile
time linker, and one example of each previous soname for the runtime linker.

Cheers,
        Gary.
- --
Gary V. Vaughan      ())_.  address@hidden,gnu.org}
Research Scientist   ( '/   http://www.oranda.demon.co.uk
GNU Hacker           / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQE/4YKUFRMICSmD1gYRAvl9AKCgaNPgT43q3XpRLeGqbWz1E63HdgCeKtE2
BTgjU5LPCPatvPo4P+gt7Lg=
=i1Ik
-----END PGP SIGNATURE-----





reply via email to

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