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

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: