GNU/Linux |
Debian 6.0.9(Squeeze) |
|
![]() |
deb-symbols(5) |
![]() |
deb−symbols − Debian’s extended shared library information file
symbols
The format for an extended shared library dependency information entry in these files is:
<library
soname> <main dependency template>
[ | <alternative dependency template> ]
[ ... ]
[ * <field-name>: <field value> ]
[ ... ]
<symbol> <minimal version>[ <id of dependency
template> ]
The library soname is exactly the value of the SONAME field as exported by objdump(1). A dependency template is a dependency where #MINVER# is dynamically replaced either by a version check like "(>= minimal version)" or by nothing (if an unversioned dependency is deemed sufficient).
Each exported symbol (listed as name@version, with version being "Base" if the library is not versioned) is associated to a minimal version of its dependency template (the main dependency template is used if id of dependency template is not present). The first alternative dependency template is numbered 1, the second one 2, etc.
Each entry for a library can also have some fields of meta-information. Those fields are stored on lines starting with an asterisk. Currently, the only valid field is Build-Depends-Package, it indicates the name of the "−dev" package associated to the library and is used by dpkg-shlibdeps to make sure that the dependency generated is at least as strict as the corresponding build dependency.
Simple
symbols file
libftp.so.3 libftp3 #MINVER#
DefaultNetbuf@Base 3.1-1-6
FtpAccess@Base 3.1-1-6
[...]
Advanced
symbols file
libGL.so.1 libgl1
| libgl1-mesa-glx #MINVER#
* Build-Depends-Package: libgl1-mesa-dev
publicGlSymbol@Base 6.3-1
[...]
implementationSpecificSymbol@Base 6.5.2-7 1
[...]
http://wiki.debian.org/Projects/ImprovedDpkgShlibdeps
dpkg−shlibdeps(1),
dpkg−gensymbols(1).
![]() |
deb-symbols(5) | ![]() |