Manpages

BEZEICHNUNG

deb-symbols - Debians erweiterte Informationsdatei von Laufzeitbibliotheken

ÜBERSICHT

DEBIAN/symbols

BESCHREIBUNG

Die Symboldateien werden in Debian-Binärpaketen ausgeliefert. Deren Format ist eine Teilmenge der Vorlagensymboldateien, die von dpkg-gensymbols(1) in Debian-Quellpaketen verwandt wird.

Das Format eines Eintrags für eine erweiterte Abhängigkeitsinformation einer Laufzeitbibliothek („shared library“) lautet:

Bibliothek-Soname Hauptabhängigkeitsvorlage
[| alternative-Abhängigkeitsvorlage]
[...]
[* Feldname: Feldwert]
[...]
Symbol minimale_Version
[Kennung_der_Abhängigkeitsvorlage]

Der Bibliotheks-Soname ist genau der Wert des SONAME-Feldes, wie er von objdump(1) exportiert wird. Eine Abhängigkeitsvorlage ist eine Abhängigkeit, in der #MINVER# dynamisch entweder von einer Versionsprüfung der Art „(>= Minimalversion)“ oder durch nichts ersetzt wird, falls eine nicht-versionierte Abhängigkeit als ausreichend erachtet wird.

Jedem exportierten Symbol (aufgeführt als Name@Version, mit Version als „Base“, falls die Bibliothek nicht versioniert ist) wird eine Minimalversion seiner Abhängigkeitsvorlage zugeordnet (die Hauptabhängigkeitsvorlage wird immer verwandt und wird am Ende mit der abhängigen, in Kennung_der_Abhängigkeitsvorlage referenzierten Vorlage (falls vorhanden) kombiniert). Die erste alternative Abhängigkeitsvorlage wird mit 1 nummeriert, die zweite mit 2 usw.

Jeder Eintrag für eine Bibliothek kann auch einige Felder mit Metainformationen enthalten. Diese Felder werden in Zeilen gespeichert, die mit einem Stern beginnen. Derzeit sind die einzig gültigen Felder:
Build-Depends-Package

Es gibt den Namen des „-dev“-Pakets an, das der Bibliothek zugeordnet ist, und wird von dpkg-shlibdeps verwandt, um sicherzustellen, dass die erstellte Abhängigkeit mindestens genauso strikt ist wie die zugehörige Bau-Abhängigkeit (seit Dpkg 1.14.13).

Build-Depends-Packages

Identisch zu Build-Depends-Package, akzeptiert aber eine Kommata-getrennte Liste an Paketnamen (seit Dpkg 1.20.0). Dieses Feld setzt jedes vorhandende Feld Build-Depends-Package außer Kraft und ist mit „-dev“-Paketen und davon abhängigen Metapaketen, beispielsweise für eine Übergangsperiode, am nützlichsten.

Allow-Internal-Symbol-Groups

Es gibt in einer durch Leerraumzeichen getrennten Liste an, welche internen Gruppen ignoriert werden sollten, so dass Symbole, die in diesen Gruppen enthalten sind, in die Ausgabedatei aufgenommen werden (seit Dpkg 1.20.1). Dies sollte nur für Toolchain-Pakete notwendig sein, die solche internen Symbole bereitstellen. Die verfügbaren Gruppen sind systemabhängig, für ELF- und GNU-basierte Systeme sind dies aeabi und gomp.

Ignore-Blacklist-Groups

Ein veralteter Alias für Allow-Internal-Symbol-Groups (seit Dpkg 1.20.1, unterstützt seit Dpkg 1.17.6).

BEISPIELE

Einfache Symboldatei

 libftp.so.3 libftp3 #MINVER#
  DefaultNetbuf@Base 3.1-1-6
  FtpAccess@Base 3.1-1-6
  […]

Fortgeschrittene Symboldatei

 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
  […]

SIEHE AUCH

https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps

dpkg-shlibdeps(1), dpkg-gensymbols(1).

ÜBERSETZUNG

Die deutsche Übersetzung wurde 2004, 2006-2020 von Helge Kreutzmann <debian [AT] helgefjell.de>, 2007 von Florian Rehnisch <eixman [AT] gmx.de> und 2008 von Sven Joachim <svenjoac [AT] gmx.de> angefertigt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 2 oder neuer für die Kopierbedingungen. Es gibt KEINE HAFTUNG.