Chapter 8. Shared libraries
57
8.6.1 The
shlibs
files present on the system
There are several places where
shlibs
files are found. The following list gives them in the
order in which they are read by
dpkg shlibdeps
. (The first one which gives the required
information is used.)
debian/shlibs.local
This lists overrides for this package. Its use is described below (see `Writing the
debian
/shlibs.local
file' on page
59
).
/etc/dpkg/shlibs.override
This lists global overrides. This list is normally empty. It is maintained by the local
system administrator.
DEBIAN/shlibs
files in the  build directory 
When packages are being built, any
debian/shlibs
files are copied into the control
file area of the temporary build directory and given the name
shlibs
. These files give
details of any shared libraries included in the package.
7
/var/lib/dpkg/info/*.shlibs
These are the
shlibs
files corresponding to all of the packages installed on the system,
and are maintained by the relevant package maintainers.
/etc/dpkg/shlibs.default
This file lists any shared libraries whose packages have failed to provide correct
shlibs
files. It was used when the
shlibs
setup was first introduced, but it is now normally
empty. It is maintained by the
dpkg
maintainer.
8.6.2 How to use
dpkg shlibdeps
and the
shlibs
files
Put a call to
dpkg shlibdeps
into your
debian/rules
file. If your package contains only
compiled binaries and libraries (but no scripts), you can use a command such as:
dpkg shlibdeps debian/tmp/usr/bin/* debian/tmp/usr/sbin/* \
debian/tmp/usr/lib/*
7
An example may help here. Let us say that the source package
foo
generates two binary packages,
libfoo2
and
foo runtime
. When building the binary packages, the two packages are created in the directories
debian
/libfoo2
and
debian/foo runtime
respectively. (
debian/tmp
could be used instead of one of these.) Since
libfoo2
provides the
libfoo
shared library, it will require a
shlibs
file, which will be installed in
debian
/libfoo2/DEBIAN/shlibs
, eventually to become
/var/lib/dpkg/info/libfoo2.shlibs
. Then when
dpkg shlibdeps
is run on the executable
debian/foo runtime/usr/bin/foo prog
, it will examine the
debian/libfoo2/DEBIAN/shlibs
file to determine whether
foo prog
's library dependencies are satisfied by
any of the libraries provided by
libfoo2
. For this reason,
dpkg shlibdeps
must only be run once all of the
individual binary packages'
shlibs
files have been installed into the build directory.






footer




 

 

 

 

 Home | About Us | Network | Services | Support | FAQ | Control Panel | Order Online | Sitemap | Contact

gay web hosting

 

Our partners: PHP: Hypertext Preprocessor Best Web Hosting Java Web Hosting Inexpensive Web Hosting  Jsp Web Hosting

Cheapest Web Hosting Jsp Hosting Cheap Hosting

Visionwebhosting.net Business web hosting division of Web Design Plus. All rights reserved