Re: Library sonames and unstable libraries
On Fri, Jan 05, 2007 at 05:56:17PM +0000, Dominic Hargreaves wrote:
> Hi,
Hi Dominic,
> Inspection of /usr/lib on my system reveals around 50 nonsymlinks of the
> form /usr/lib/*.so. Are these all bugs? eg:
>
> ./libdb-4.4.so
> ./liba52-0.7.4.so
> ./libdb-4.3.so
> ./libc.so
> ./libdb-4.1.so
> ./libdb-4.2.so
> ./libdb_cxx-4.2.so
> ./libdivxdecore.so
> ./libdivxencore.so
> ./libbfd-2.17.so
> ./libfakechroot.so
> ./libopcodes-2.17.so
> ./libgnomevfs-pthread.so
> [...]
No. *.so are linker symlinks used at compiled time. The compile flags -lfoo
looks for libfoo.so, incuded in -dev packages, different versions of which
(libfoo1, libfoo2) all conflict with each other as per policy (via Provides:
libfoo-dev, because they all contain common header file pathnames). The
locations of the libraries are given by (compiletime?) defaults, as well as at
runtime with eg. -L options.
Too, there are actually two forms of library soname file naming used:
libfoo.so.1.2.3
and
libfoo-1.2.3.so
Justin
Reply to: