diff options
Diffstat (limited to 'man/de/dpkg-shlibdeps.pod')
-rw-r--r-- | man/de/dpkg-shlibdeps.pod | 447 |
1 files changed, 447 insertions, 0 deletions
diff --git a/man/de/dpkg-shlibdeps.pod b/man/de/dpkg-shlibdeps.pod new file mode 100644 index 0000000..2a219fb --- /dev/null +++ b/man/de/dpkg-shlibdeps.pod @@ -0,0 +1,447 @@ + + ***************************************************** + * GENERATED FILE, DO NOT EDIT * + * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION * + ***************************************************** + +This file was generated by po4a(7). Do not store it (in VCS, for example), +but store the PO file used as source file by po4a-translate. + +In fact, consider this as a binary, and the PO file as a regular .c file: +If the PO get lost, keeping this translation up-to-date will be harder. + +=encoding UTF-8 + +=head1 BEZEICHNUNG + +dpkg-shlibdeps - Substvar-Abhängigkeiten für Laufzeitbibliotheken erstellen + +=head1 ÜBERSICHT + +B<dpkg-shlibdeps> [I<Option>…] [B<-e>] I<Programm> [I<Option>…] + +=head1 BESCHREIBUNG + +B<dpkg-shlibdeps> berechnet Abhängigkeiten von Laufzeitbibliotheken für +Programme, deren Namen als Argument übergeben werden. Die Abhängigkeiten +werden zu der Datei der Ersetzungsvariablen B<debian/substvars> als +Variablennamen B<shlibs:>I<Abhängigkeitsfeld> hinzugefügt, wobei +I<Abhängigkeitsfeld> der Feldname einer Abhängigkeit ist. Alle anderen +Variablen, die mit B<shlibs:> beginnen, werden aus der Datei entfernt. + +B<dpkg-shlibdeps> hat zwei mögliche Informationsquellen zur Erstellung der +Abhängigkeitsinformationen. Entweder I<Symbol>- oder +I<Shlibs>-Dateien. B<dpkg-shlibdeps> findet für jedes Programm, das es +analysiert, die Bibliotheken heraus, gegen die es gelinkt ist. Bei jeder +Bibliothek schaut es entweder in die I<Symbol>- oder in die I<Shlibs>-Datei +(falls Erstere nicht existiert oder falls B<debian/shlibs.local> die +relevanten Abhängigkeiten enthält). Beide Dateien sollten von dem +Bibliothekspaket bereitgestellt werden und sollten daher als +%ADMINDIR%/info/I<Paket>.I<Symbol> oder %ADMINDIR%/info/I<Paket>.I<Shlibs> +verfügbar sein. Der Paketname wird in zwei Schritten identifiziert: zuerst +wird die Bibliotheksdatei auf dem System gefunden (durch Prüfung der +gleichen Verzeichnisse wie bei B<ld.so>), dann wird B<dpkg -S> +I<Bibliotheksdatei> verwendet, um das Paket, das die Bibliothek +bereitstellt, zu ermitteln. + +=head2 Symboldateien + +Symboldateien enthalten feiner-granulare Abhängigkeitsinformationen, indem +sie die Minimalabhängigkeit für jedes von der Bibliothek exportierte Symbol +beschreiben. Das Skript versucht, eine Symboldatei, die zu dem +Bibliothekspaket gehört, an den folgenden Orten zuzuordnen (der erste +Treffer wird verwendet): + +=over + +=item debian/*/DEBIAN/symbols + +Informationen über Laufzeitbibliotheken, die vom aktuellen Bauprozess +erstellt werden, der auch B<dpkg-shlibdeps> aufruft. Sie werden von +B<dpkg-gensymbols>(1) erstellt. Sie werden nur verwendet, falls die +Bibliothek im Bau-Baum des Pakets gefunden wird. Die Symboldatei im Bau-Baum +hat Vorrang gegenüber Symboldateien aus anderen Binärpaketen. + +=item %PKGCONFDIR%/symbols/I<Paket>.symbols.I<Architektur> + +=item %PKGCONFDIR%/symbols/I<Paket>.symbols + +Systemabhängige Überschreibung der Abhängigkeitsinformationen von +Laufzeitbibliotheken. I<Architektur> ist die Architektur des aktuellen +Systems (ermittelt durch B<dpkg-architecture -qDEB_HOST_ARCH>). + +=item Ausgabe von „B<dpkg-query --control-path> I<Paket> symbols“ + +Vom Paket bereitgestellte Abhängigkeitsinformationen für +Laufzeitbibliotheken. Falls nicht durch B<--admindir> überschrieben, +befinden sich solche Dateien unter %ADMINDIR%. + +=back + +Während des Durchsuchens aller vom Programm verwendeten Symbole erinnert +sich B<dpkg-shlibdeps> an die (höchste) Minimalversion, die von jeder +Bibliothek benötigt wird. Am Ende des Prozesses ist es in der Lage, die +minimale Abhängigkeit für jede eingesetzte Bibliothek zu schreiben +(vorausgesetzt, die Informationen in den I<Symbol>-Dateien sind korrekt). + +Als Sicherheitsmaßnahme kann eine Symbols-Datei ein Meta-Informationsfeld +B<Build-Depends-Package> enthalten. B<dpkg-shlibdeps> entnimmt dann die +minimale Version, die von dem korrespondierenden Paket im Feld +B<Build-Depends> benötigt wird, und verwendet diese Version, falls sie höher +ist als die minimale Version, die beim Durchsuchen der Symbole ermittelt +wurde. + +=head2 Shlibs-Dateien + +Shlibs-Dateien ordnen Bibliotheken direkt Abhängigkeiten zu (ohne auf die +Symbole zu schauen). Daher ist dies oft stärker als benötigt, aber dafür +sicher und leicht zu handhaben. + +Die Abhängigkeiten für eine Bibliothek werden an verschiedenen Stellen +nachgeschlagen. Die erste Datei, die Informationen für die betrachtete +Bibliothek bereitstellt, wird verwendet: + +=over + +=item debian/shlibs.local + +Paket-beschränkte Überschreibung der Abhängigkeitsinformationen von +Laufzeitbibliotheken. + +=item %PKGCONFDIR%/shlibs.override + +Systemabhängige Überschreibung der Abhängigkeitsinformationen von +Laufzeitbibliotheken. + +=item debian/*/DEBIAN/shlibs + +Informationen über Laufzeitbibliotheken, die vom aktuellen Bauprozess +erstellt werden, der auch B<dpkg-shlibdeps> aufruft. Sie werden nur +verwendet, falls die Bibliothek im Bau-Verzeichnis eines Pakets gefunden +wird. Die Shlibs-Datei in diesem Bau-Verzeichnis hat gegenüber +Shlibs-Dateien von anderen Binärpaketen Vorrang. + +=item Ausgabe von „B<dpkg-query --control-path> I<Paket> shlibs“ + +Vom Paket bereitgestellte Abhängigkeitsinformationen für +Laufzeitbibliotheken. Falls nicht durch B<--admindir> überschrieben, +befinden sich solche Dateien unter %ADMINDIR%. + +=item %PKGCONFDIR%/shlibs.default + +Systemabhängige Vorgaben für Abhängigkeitsinformationen von +Laufzeitbibliotheken. + +=back + +Die entnommenen Abhängigkeiten werden direkt verwendet (es sei denn, sie +werden als Dubletten herausgefiltert oder sie sind schwächer als eine andere +Abhängigkeit). + +=head1 OPTIONEN + +B<dpkg-shlibdeps> interpretiert nicht-Options-Argumente als Namen von +ausführbaren Programmen, als ob diese mit B<-e>I<Programm> übergeben worden +wären. + +=over + +=item B<-e>I<Programm> + +Nimmt Abhängigkeiten auf, die für von I<Programm> benötigte +Laufzeitbibliotheken angemessen sind. Diese Option kann mehrfach angegeben +werden. + +=item B<-l>I<Verzeichnis> + +Stellt I<Verzeichnis> der Liste der zu durchsuchenden privaten +Laufzeitbibliotheken voran (seit Dpkg 1.17.0). Diese Option kann mehrfach +angegeben werden. + +B<Hinweis>: Verwenden Sie diese Variable, statt B<LD_LIBRARY_PATH> zu +setzen, da diese Umgebungsvariable verwandt wird, um den Laufzeit-Linker zu +steuern und ihr Missbrauch zum Setzen von Pfaden zu Laufzeitbibliotheken zur +Bauzeit kann beispielsweise beim Cross-Kompilieren problematisch werden. + +=item B<-d>I<Abhängigkeitsfeld> + +Fügt Abhängigkeiten hinzu, die zum I<Abhängigkeitsfeld> der Steuerdatei +hinzugefügt werden sollen. (Die Abhängigkeiten für dieses Feld werden in die +Variable B<shlibs:>I<Abhängigkeitsfeld> geschrieben.) + +Die Option B<-d>I<Abhängigkeitsfeld> betrifft alle Programme, die danach +angegeben werden, bis zum nächsten B<-d>I<Abhängigkeitsfeld>. Der +Standardwert für I<Abhängigkeitsfeld> ist B<Depends>. + +Falls der gleiche Abhängigkeitseintrag (oder ein Satz von Alternativen) mehr +als einmal in den erkannten Abhängigkeitsfeldnamen B<Pre-Depends>, +B<Depends>, B<Recommends>, B<Enhances> oder B<Suggests> auftaucht, wird +B<dpkg-shlibdeps> die Abhängigkeit von allen Feldern außer dem, das die +wichtigsten Abhängigkeiten repräsentiert, entfernen. + +=item B<-p>I<Variablennamepräfix> + +Beginnt die Ersetzungsvariablen mit I<Variablennamepräfix>B<:> statt mit +B<shlibs:>. Entsprechend werden alle Ersetzungsvariablen, die mit +I<Variablennamepräfix>B<:> (statt mit B<shlibs:>) beginnen, aus der +Ersetzungsvariablendatei entfernt. + +=item B<-O>[I<Dateiname>] + +Gibt die Ersetzungsvariableneinstellung in die Standardausgabe (oder nach +I<Dateiname>, falls angegeben, seit Dpkg 1.17.2) aus, statt sie zu der +Ersetzungsvariablendatei (standardmäßig (B<debian/substvars>) hinzuzufügen. + +=item B<-t>I<Typ> + +Bevorzugt Abhängigkeitsinformationen für Laufzeitbibliotheken, die für ein +vorgegebenes Paket markiert sind. Falls keine Markierungsinformation +verfügbar ist, fällt dies auf unmarkierte Informationen zurück. Der +Standard-Pakettyp ist B<deb>. Abhängigkeitsinformationen für +Laufzeitbibliotheken werden für einen vorgegebenen Typ markiert, indem vor +sie der Namen des Typs, ein Doppelpunkt und ein Leerraumzeichen gesetzt +wird. + +=item B<-L>I<lokale_shlibs-Datei> + +Liest die Hinwegsetz-Abhängigkeiten von Laufzeitbibliotheken aus +I<lokale_shlibs-Datei> statt aus B<debian/shlibs.local>. + +=item B<-T>I<Substvars-Datei> + +Schreibt Ersetzungsvariablen in I<Substvars-Datei>; standardmäßig +B<debian/substvars>. + +=item B<-v> + +Aktiviert ausführlichen Modus (seit Dpkg 1.14.8). Eine Vielzahl von +Meldungen wird angezeigt, um zu erklären, was B<dpkg-shlibdeps> durchführt. + +=item B<-x>I<Paket> + +Schließt das Paket von den generierten Abhängigkeiten aus (seit Dpkg +1.14.8). Dies ist für Pakete nützlich, die ELF-Programmdateien (Programme +oder Bibliothekserweiterungen) bereitstellen, die eine Bibliothek im +gleichen Paket verwendet, um Abhängigkeiten des Pakets zu sich selbst zu +vermeiden. Diese Option kann mehrfach verwendet werden, um mehrere Pakete +auszuschließen. + +=item B<-S>I<Paketbauverzeichnis> + +Schaut beim Versuch, eine Bibliothek zu finden, zuerst in +I<Paketbauverzeichnis> (seit Dpkg 1.14.15). Dies ist nützlich, wenn das +Quellpaket mehrere Spielarten der gleichen Bibliothek baut und Sie +sicherstellen wollen, dass Sie die Abhängigkeit aus einem bestimmten +Binärpaket erhalten. Sie können diese Option mehrfach verwenden: +Verzeichnisse werden in der gleichen Reihenfolge vor Verzeichnissen anderer +Binärpakete probiert. + +=item B<-I>I<Paketbauverzeichnis> + +Ignoriert I<Paketbauverzeichnis> beim Schauen nach Shlibs, Symbolen und +gemeinsam benutzten Bibliotheken (seit Dpkg 1.18.5). Sie können diese Option +mehrfach verwenden. + +=item B<--ignore-missing-info> + +Falls keine Abhängigkeitsinformationen für die Laufzeitbibliothek gefunden +werden kann, erfolgt kein Fehlschlag (seit Dpkg 1.14.8). Von der Verwendung +dieser Option wird abgeraten, da alle Bibliotheken +Abhängigkeitsinformationen bereitstellen sollten (entweder über +shlibs-Dateien oder über symbols-Dateien), selbst falls diese noch nicht von +anderen Paketen verwendet werden. + +=item B<--warnings=>I<Wert> + +I<Wert> ist ein Bitfeld, das den Satz an Warnungen definiert, die von +B<dpkg-shlibdeps> ausgegeben werden können (seit Dpkg 1.14.17). Bit 0 +(Wert=1) aktiviert die Warnung „Symbol I<Sym>, verwendet von I<Programm>, in +keiner der Bibliotheken gefunden.“, Bit 1 (Wert=2) aktiviert die Warnung +„Das Paket könnte eine nutzlose Abhängigkeit vermeiden“ und Bit 2 (Wert=4) +aktiviert die Warnung „I<Programm> sollte nicht gegen I<Bibliothek> gelinkt +werden“. Standardmäßig ist I<Wert> 3: die ersten zwei Warnungen sind +standardmäßig aktiv, die letzte nicht. Setzen Sie I<Wert> auf 7, falls Sie +möchten, dass alle Warnungen aktiv sein sollen. + +=item B<--admindir=>I<Verz> + +Ändert den Ablageort der B<dpkg>-Datenbank (seit Dpkg 1.14.0). Der +Standardort ist I<%ADMINDIR%>. + +=item B<-?>, B<--help> + +Zeigt einen Hinweis zum Aufruf und beendet das Programm. + +=item B<--version> + +Gibt die Version aus und beendet das Programm. + +=back + +=head1 UMGEBUNG + +=over + +=item B<DPKG_COLORS> + +Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit unterstützten Werte +sind: B<auto> (Vorgabe), B<always> und B<never>. + +=item B<DPKG_NLS> + +Falls dies gesetzt ist, wird es zur Entscheidung, ob Native Language +Support, auch als Unterstützung für Internationalisierung (oder i18n) +bekannt, aktiviert wird (seit Dpkg 1.19.0). Die akzeptierten Werte sind: +B<0> und B<1> (Vorgabe). + +=back + +=head1 DIAGNOSE + +=head2 Warnungen + +Da B<dpkg-shlibdeps> den Symbolsatz, der von jedem Programm des erstellten +Pakets verwendet wird, analysiert, ist es in mehreren Fällen in der Lage, +Warnungen auszugeben. Sie informieren Sie über Dinge, die im Paket +verbessert werden können. Meistens betreffen diese Verbesserungen direkt die +Quellen der Originalautoren. In der Reihenfolge abnehmender Wichtigkeit +folgen hier die relevanten Warnungen, die auftauchen könnten: + +=over + +=item B<Symbol> I<Symbol>B<, verwendet von> I<Programm>B<, in keiner der +Bibliotheken gefunden.> + +Das angegebene Symbol wurde nicht in den Bibliotheken gefunden, gegen die +das Programm gelinkt wurde. I<Programm> ist höchstwahrscheinlich eine +Bibliothek und muss mit zusätzlichen Bibliotheken während des Bau-Prozesses +gelinkt werden (Option B<-l>I<Bibliothek> des Linkers). + +=item I<Programm> B<enthält eine nicht-auflösbare Referenz auf Symbol> I<Sym>B<: +wahrscheinlich eine Erweiterung>. + +Das angegebene Symbol wurde nicht in den Bibliotheken gefunden, die mit +diesem Programm verlinkt sind. Das I<Progamm> ist höchstwahrscheinlich eine +Erweiterung und das Symbol wird von dem Programm bereitgestellt, das diese +Erweiterung lädt. Theoretisch verfügt eine Erweiterung nicht über einen +SONAMEn, allerdings ist dies bei diesem Programm der Fall und daher konnte +es nicht eindeutig als Erweiterung erkannt werden. Die Tatsache, dass dieses +Programm in einem nicht-öffentlichen Verzeichnis gespeichert wird, ist +allerdings ein starkes Anzeichen dafür, dass es keine normale gemeinsam +benutzte Bibliothek ist. Falls dieses Programm tatsächlich eine Erweiterung +ist, ignorieren Sie die Warnung. Allerdings besteht immer die Möglichkeit, +dass es eine echte Bibliothek ist und dass Programme, die damit verlinken, +einen RPATH verwenden, so dass der dynamische Lader sie findet. In diesem +Fall ist die Bibliothek beschädigt und muss repariert werden. + +=item B<Das Paket könnte eine nutzlose Abhängigkeit vermeiden, falls> I<Programm> +B<nicht gegen> I<Bibliothek> B<gelinkt wäre (es verwendet keines der Symbole +der Bibliothek).> + +Keines der I<Programme>, die gegen I<Bibliothek> gelinkt sind, verwendet +eines der von der Bibliothek bereitgestellten Symbole. Indem Sie die +Programme korrigierten, vermieden Sie die Abhängigkeit, die mit dieser +Bibliothek verbunden ist (es sei denn, die Abhängigkeit wird auch durch eine +andere Bibliothek generiert, die diese Bibliothek wirklich verwendet). + +=item B<Das Paket könnte eine nutzlose Abhängigkeit vermeiden, falls> I<Programme> +B<nicht gegen> I<Bibliothek> B<gelinkt wären (sie verwenden keines der +Symbole der Bibliothek).> + +Exakt das gleiche wie die obige Warnung, aber für mehrere Programme. + +=item I<Programm> B<sollte nicht gegen> I<Bibliothek> B<gelinkt werden (es +verwendet keines der Bibliotheks-Symbole).> + +Das I<Programm> ist gegen eine Bibliothek gelinkt, die es nicht +benötigt. Das ist kein Problem, aber bei der Ladezeit können kleine +Leistungsverbesserungen erreicht werden, indem diese Bibliothek nicht in das +Programm gelinkt wird. Diese Warnung überprüft die gleichen Informationen +wie die vorhergehende, allerdings für jedes Programm statt global für alle +überprüften Programme. + +=back + +=head2 Fehler + +B<dpkg-shlibdeps> wird fehlschlagen, falls es eine vom Programm verwendete +öffentliche Bibliothek nicht finden kann oder falls diese Bibliothek keine +zugeordneten Abhängigkeitsinformationen hat (entweder eine Shlibs- oder +Symbols-Datei). Eine öffentliche Bibliothek hat einen SONAME und ist +versioniert (libirgendwas.so.I<X>). Eine private Bibliothek (wie z.B. eine +Erweiterung) sollte keinen SONAME haben und braucht nicht versioniert zu +sein. + +=over + +=item B<konnte Bibliothek> I<SONAME-der-Bibliothek> B<benötigt von> I<Programm> +B<nicht finden (ihr RPATH ist „>I<rpath>B<“).> + +Das I<Programm> verwendet eine Bibliothek mit Namen +I<SONAME-der-Bibliothek>, aber B<dpkg-shlibdeps> konnte diese Bibliothek +nicht finden. B<dpkg-shlibdeps> erstellt folgendermaßen eine Liste der zu +prüfenden Verzeichnisse: im RPATH des Programms aufgeführte Verzeichnisse, +durch die Option B<-l> hinzugefügte Verzeichnisse, in der Umgebungsvariable +B<LD_LIBRARY_PATH> aufgeführte Verzeichnisse, Cross-Multiarch-Verzeichnisse +(z.B. /lib/arm64-linux-gnu, /usr/lib/arm64-linux-gnu), standardmäßige +öffentliche Verzeichnisse (/lib, /usr/lib), in /etc/ld.so.conf aufgeführte +Verzeichnisse und veraltete Multilib-Verzeichnisse (/lib32, /usr/lib32, +/lib64, /usr/lib64). Dann prüft es diese Verzeichnisse im Bau-Baum des +analysierten Pakets, in den mit der Befehlszeilenoption B<-S> angegebenen +Paketbauverzeichnissen, in anderen Paketbau-Bäumen, die eine DEBIAN/shlibs- +oder DEBIAN/symbols-Datei enthalten und schließlich im +Wurzelverzeichnis. Falls die Bibliothek nicht in einem dieser Verzeichnisse +gefunden wird, erhalten Sie diesen Fehler. + +Falls sich die nicht gefundene Bibliothek in einem privaten Verzeichnis des +gleichen Pakets befindet, müssen Sie das Verzeichnis mit B<-l> +hinzufügen. Falls sie sich in einem anderen gerade zu bauenden Paket +befindet, müssen Sie sicherstellen, dass die „shlibs/symbols“-Datei dieses +Pakets bereits angelegt ist und das B<-l> das geeignete Verzeichnis enthält, +falls die Bibliothek zudem in einem privaten Verzeichnis liegt. + +=item B<Keine Abhängigkeitsinformationen für> I<Bibliotheksdatei> B<(verwendet +von> I<Programm>B<) gefunden.> + +Die von I<Programm> benötigte Bibliothek wurde von B<dpkg-shlibdeps> in +I<Bibliotheksdatei> gefunden, allerdings konnte B<dpkg-shlibdeps> keine +Abhängigkeitsinformationen für diese Bibliothek ermitteln. Um die +Abhängigkeit herauszufinden, hat es versucht, die Bibliothek mittels B<dpkg +-S> I<Bibliotheksdatei> auf ein Debian-Paket abzubilden. Dann überprüfte es +die zugehörigen Shlibs- und Symboldateien in %ADMINDIR%/info/ und die +verschiedenen Paketbaubäume (debian/*/DEBIAN/). + +Dieser Fehlschlag kann durch defekte oder fehlende Shlibs- oder +Symboldateien im Paket der Bibliothek ausgelöst werden. Er könnte auch +auftreten, falls die Bibliothek im gleichen Quellpaket gebaut wird und die +Shlibs-Datei noch nicht angelegt wurde (wobei Sie in diesem Fall +debian/rules korrigieren müssen, damit die Shlibs-Datei erstellt wird, bevor +B<dpkg-shlibdeps> aufgerufen wird). Defekte RPATH können auch dazu führen, +dass die Bibliothek unter nicht-kanonischen Namen gefunden wird +(beispielsweise /usr/lib/openoffice.org/../lib/libssl.so.0.9.8 statt +/usr/lib/libssl.so.0.9.8), so dass dann diese keinem Paket zugeordnet ist; +B<dpkg-shlibdeps> versucht dies zu umgehen, indem es auf einen kanonischen +Namen (mittels B<realpath>(3)) zurückfällt, allerdings könnte dies manchmal +nicht funktionieren. Es ist immer am besten, den RPATH zu bereinigen, um +Probleme zu vermeiden. + +Viele weitere Informationen darüber, wo nach Abhängigkeitsinformationen +gesucht wird, können durch einen Aufruf von B<dpkg-shlibdeps> im +detaillierten Modus (B<-v>) erhalten werden. Dies kann nützlich sein, falls +Sie nicht verstehen, warum es Ihnen diesen Fehler meldet. + +=back + +=head1 SIEHE AUCH + +B<deb-shlibs>(5), B<deb-symbols>(5), B<dpkg-gensymbols>(1). + + +=head1 ÜBERSETZUNG + +Die deutsche Übersetzung wurde 2004, 2006-2020 von Helge Kreutzmann +<debian@helgefjell.de>, 2007 von Florian Rehnisch <eixman@gmx.de> und +2008 von Sven Joachim <svenjoac@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. |