Provided by: dpkg-dev_1.16.1.2ubuntu7_all bug

NAME

       dpkg-shlibdeps      -      erstelle     Substvar-Abhangigkeiten     fur
       Laufzeitbibliotheken

"UBERSICHT

       dpkg-shlibdeps [Option...] [-e]Programm [Option...]

BESCHREIBUNG

       dpkg-shlibdeps berechnet Abhangigkeiten  von  Laufzeitbibliotheken  fur
       Programme, deren Name als Argument ubergeben werden. Die Abhangigkeiten
       werden zu der Datei  der  Substitutionsvariablen  debian/substvars  als
       Variablennamen      shlibs:Abh"angigkeitsfeld     hinzugefugt,     wobei
       Abh"angigkeitsfeld der Feldname einer  Abhangigkeit  ist.  Alle  anderen
       Variablen, die mit shlibs: beginnen, werden aus der Datei entfernt.

       dpkg-shlibdeps hat zwei mogliche Informationsquellen zur Erstellung der
       Abhangigkeitsinformationen.  Entweder  Symbol-   oder   Shlibs-Dateien.
       dpkg-shlibdeps  findet  fur  jedes  Programm,  das  es  analysiert, die
       Bibliotheken heraus, gegen die es gelinkt  ist.  Bei  jeder  Bibliothek
       schaut  es  entweder  in  die  Symbol-  oder  in in Shlibs-Datei (falls
       erstere nicht existiert odr falls  debian/shlibs.local  die  relevanten
       Abhangigkeiten enthalt). Beide Dateien sollten von dem Bibliothekspaket
       bereitgestellt      werden      und       sollten       daher       als
       /var/lib/dpkg/info/Paket.Symbol   oder  /var/lib/dpkg/info/Paket.Shlibs
       verfugbar sein. Der Paketname wird  in  zwei  Schritten  identifiziert:
       zuerst wird die Bibliotheksdatei auf dem System gefunden (durch Prufung
       der  gleichen  Verzeichnisse  wie  bei  ld.so),  dann  wird   dpkg   -S
       Bibliotheksdatei   verwendet,   um   das   Paket,  das  die  Bibliothek
       bereitstellt, zu ermitteln.

   Symboldateien
       Symboldateien  enthalten  feiner-granulare  Abhangigkeitsinformationen,
       indem   sie  die  Minimalabhangigkeit  fur  jedes  von  der  Bibliothek
       exportierte Symbol beschreiben. Das Skript versucht,  eine  Symboldatei
       die  zu  dem Bibliothekspaket gehort, an den folgenden Orten zuzuordnen
       (der erste Treffer wird verwendet):

       debian/*/DEBIAN/symbols
              Informationen  uber  Laufzeitbibliotheken,  die  vom   aktuellen
              Bauprozess erstellt werden, der auch dpkg-shlibdeps aufruft. Sie
              werden  von  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   gegenuber
              Symboldateien aus anderen Binarpaketen.

       /etc/dpkg/symbols/Paket.symbols.Architektur

       /etc/dpkg/symbols/Paket.symbols
              Systemabhangige  Uberschreibung  der  Abhangigkeitsinformationen
              von Laufzeitbibliotheken. Architektur ist  die  Architektur  des
              aktuellen    Systems    (ermittelt    durch    dpkg-architecture
              -qDEB_HOST_ARCH).

       Ausgabe von "dpkg-query --control-path Paket symbols"
              Vom   Paket   bereitgestellte   Abhangigkeitsinformationen   fur
              Laufzeitbibliotheken.     Falls     nicht    durch    --admindir
              uberschrieben, befinden sich solche Dateien unter /var/lib/dpkg.

       Wahrend  des  Durchsuchens  aller  vom  Programm  verwendeten   Symbole
       erinnert  sich  dpkg-shlibdeps  an  die  groBte Minimalversion, die von
       jeder Bibliothek benotigt wird. Am Ende des Prozesses  ist  es  in  der
       Lage,  die  minimale  Abhangigkeit  fur  jede eingesetzte Bibliothek zu
       schreiben (vorausgesetzt, die Informationen in den Symbol-Dateien  sind
       korrekt).

       Als     SicherheitsmaBnahme     kann     eine     Symbols-Datei     ein
       Meta-Informationsfeld Build-Depends-Package  enthalten.  dpkg-shlibdeps
       extrahiert  dann  die  minimale Version, die von dem korrespondierenden
       Paket im Feld Build-Depends benotigt wird, und verwendet diese Version,
       falls  sie hoher ist als die minimale Version, die beim Durchsuchen der
       Symbole ermittelt wurde.

   Shlibs-Dateien
       Shlibs-Dateien ordnen Bibliotheken direkt Abhangigkeiten zu  (ohne  auf
       die  Symbole zu schauen). Daher ist dies oft starker als benotigt, aber
       dafur sicher und leicht zu handhaben.

       Die Abhangigkeiten fur eine Bibliothek wird  an  verschiedenen  Stellen
       nachgeschlagen.  Die erste Datei, die Informationen fur die betrachtete
       Bibliothek bereitstellt, wird verwendet:

       debian/shlibs.local
              Paket-beschrankte Uberschreibung der  Abhangigkeitsinformationen
              von Laufzeitbibliotheken.

       /etc/dpkg/shlibs.override
              Systemabhangige  Uberschreibung  der  Abhangigkeitsinformationen
              von Laufzeitbibliotheken.

       debian/*/DEBIAN/shlibs
              Informationen  uber  Laufzeitbibliotheken,  die  vom   aktuellen
              Bauprozess erstellt werden, der auch 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  gegenuber   Shlibs-Dateien   von   anderen
              Binarpaketen Vorrang.

       Ausgabe von "dpkg-query --control-path Paket shlibs"
              Vom   Paket   bereitgestellte   Abhangigkeitsinformationen   fur
              Laufzeitbibliotheken.    Falls    nicht     durch     --admindir
              uberschrieben, befinden sich solche Dateien unter /var/lib/dpkg.

       /etc/dpkg/shlibs.default
              Systemabhangige   Vorgaben  fur  Abhangigkeitsinformationen  von
              Laufzeitbibliotheken.

       Die extrahierten Abhangigkeiten werden direkt verwendet  (es  sei  den,
       sie  werden  als  Dubletten herausgefiltert oder sie sind schwacher als
       eine andere Abhangigkeit).

OPTIONEN

       dpkg-shlibdeps  interpretiert  nicht-Options-Argumente  als  Namen  von
       ausfuhrbaren  Programmen,  als ob diese mit -eProgramm ubergeben worden
       waren.

       -eProgramm
              Abhangigkeiten  aufnehmen,  die  fur  von   Programm   benotigte
              Laufzeitbibliotheken angemessen sind.

       -dAbh"angigkeitsfeld
              Fuge    Abhangigkeiten    hinzu,   die   zum   Abhangigkeitsfeld
              Abh"angigkeitsfeld der  Steuerdatei  hinzugefugt  werden  sollen.
              (Die  Abhangigkeiten  fur  dieses  Feld  werden  in die Variable
              shlibs:Abh"angigkeitsfeld geschrieben.)

              Die Option  -dAbh"angigkeitsfeld  betrifft  alle  Programme,  die
              danach  angegeben  werden, bis zum nachsten -dAbh"angigkeitsfeld.
              Der Standardwert fur Abh"angigkeitsfeld ist Depends.

              Falls  der  gleiche  Abhangigkeitseintrag  (oder  ein  Satz  von
              Alternativen)    mehr    als    einmal    in    den    erkannten
              Abhangigkeitsfeldnamen   Pre-Depends,    Depends,    Recommends,
              Enhances   oder  Suggests  auftaucht,  wird  dpkg-shlibdeps  die
              Abhangigkeit von allen Feldern auBer dem,  das  die  wichtigsten
              Abhangigkeiten reprasentiert, entfernen.

       -pVariablennamepr"afix
              Beginn die Substitutionsvariablen mit Variablennamepr"afix: statt
              mit shlibs:. Entsprechend  werden  alle  Substitutionsvariablen,
              die  mit  Variablennamepr"afix: (statt mit shlibs:) beginnen, aus
              den Substitutionsvariablen entfernt.

       -O     Gebe die Variableneinstellung in die Standardausgabe aus,  statt
              sie    zu    der    Substitutionsvariablendatei   (standardmaBig
              (debian/substvars) hinzuzufugen.

       -tTyp  Bevorzuge Abhangigkeitsinformationen  fur  Laufzeitbibliotheken,
              die  fur  ein  vorgegebenes  Paket  markiert  sind.  Falls keine
              Markierungsinformation verfugbar ist, fallt dies auf unmarkierte
              Informationen   zuruck.   Der   Standard-Pakettyp  ist  >>deb<<.
              Abhangigkeitsinformationen fur Laufzeitbibliotheken  werden  fur
              einen  vorgegebenen  Typ  markiert,  indem vor sie der Namen des
              Typs, ein Doppelpunkt und ein Leerzeichen gesetzt wird.

       -Llokalshlibsdatei
              Lese die Hinwegsetz-Abhangigkeiten von Laufzeitbibliotheken  aus
              lokalshlibsdatei statt aus debian/shlibs.local.

       -Tsubstvardatei
              Schreibe  Substitutionsvariablen in Substvardatei; standardmaBig
              debian/substvars.

       -v     Aktiviere ausfuhrlichen Modus.  Eine  Vielzahl  von  Nachrichten
              wird angezeigt, um zu erklaren, was dpkg-shlibdeps durchfuhrt.

       -xPaket
              SchlieBe  das Paket von den generierten Abhangigkeiten aus. Dies
              ist fur Pakete nutzlich, die ELF-Programmdateien (Programme oder
              Bibliothekserweiterungen)  bereitstellen, die eine Bibliothek im
              gleichen Paket verwenden, um selbst-Abhangigkeiten zu vermeiden.
              Diese  Option  kann mehrfach verwendet werden, um mehrere Pakete
              auszuschlieBen.

       -SPaketbauverzeichnis
              Schaue beim  Versuch,  eine  Bibliothek  zu  finden,  zuerst  in
              Paketbauverzeichnis.  Dies  ist  nutzlich,  wenn  das Quellpaket
              mehrere  Spielarten  der  gleichen  Bibliothek  baut   und   Sie
              sicherstellen  wollen,  dass  Sie  die  Abhangigkeit  aus  einem
              bestimmten Binarpaket erhalten. Sie konnen diese Option mehrfach
              verwenden:  Verzeichnisse werden in der gleichen Reihenfolge vor
              Verzeichnissen anderer Binarpakete probiert.

       --ignore-missing-info
              Falls     keine     Abhangigkeitsinformationen      fur      die
              Laufzeitbibliothek    gefunden   werden   kann,   erfolgt   kein
              Fehlschlag. Von der Verwendung dieser Option wird abgearten,  da
              alle   Bibliotheken   Abhangigkeitsinformationen   bereitstellen
              sollten    (entweder    uber    shlibs-Dateien     oder     uber
              symbols-Dateien),  selbst  falls  diese  noch  nicht von anderen
              Paketen verwendet werden.

       --warnings=Wert
              Wert ist ein Bitfeld, das den Satz an Warnungen  definiert,  die
              von  dpkg-shlibdeps  ausgegeben  werden  konnen.  Bit 0 (Wert=1)
              aktiviert die Warnung >>Symbol Sym, verwendet von  Programm,  in
              keiner  der  Bibliotheken  gefunden.<<, Bit 1 (Wert=2) aktiviert
              die  Warnung  >>Abhangigkeit  von  Bibliothek  konnte  vermieden
              werden<<  und  Bit  2  (Wert=4) aktiviert die Warnung >>Programm
              sollte nicht gegen Bibliothek  gelinkt  werden<<.  StandardmaBig
              ist  Wert 3: die ersten zwei Warnungen sind standardmaBig aktiv,
              die letzte nicht. Setzten Sie Wert auf  7,  falls  Sie  mochten,
              dass alle Warnungen aktiv sein sollen.

       --admindir=Verz
              Andert  den  Ablageort  der  dpkg-Datenbank. Der Standardort ist
              /var/lib/dpkg.

       -h, --help
              Zeige den Bedienungshinweis und beende.

       --version
              Gebe die Version aus und beende sich.

WARNUNGEN

       Da dpkg-shlibdeps den Symbolsatz, der von jedem Programm des erstellten
       Pakets  verwendet  wird,  analysiert,  ist es in mehreren Fallen in der
       Lage, Warnungen auszugeben. Sie informieren  Sie  uber  Dinge,  die  im
       Paket verbessert werden konnen. Meistens betreffen diese Verbesserungen
       direkt die Quellen der Originalautoren. In der Reihenfolge  abnehmender
       Wichtigkeit  folgen  hier  die  relevanten  Warnungen,  die  auftauchen
       konnten:

       Symbol  Symbol, verwendet von  Programm,  in  keiner  der  Bibliotheken
       gefunden.
              Das  angegebene Symbol wurde nicht in den Bibliotheken gefunden,
              gegen   die   das   Programm   gelinkt   wurde.   Programm   ist
              hochstwahrscheinlich  eine  Bibliothek und muss mit zusatzlichen
              Bibliotheken wahrend des Bau-Prozesses  gelinkt  werden  (Option
              -lBibliothek des Linkers).

       Programm   enth"alt  eine  nicht-aufl"osbare  Referenz  auf  Symbol  Sym:
       wahrscheinlich eine Erweiterung.
              Das angegebene Symbol wurde nicht in den Bibliotheken  gefunden,
              die   mit   diesem  Programm  verlinkt  sind.  Das  Progamm  ist
              hochstwahrscheinlich eine Erweiterung und das  Symbol  wird  von
              dem   Programm   bereitgestellt,  das  diese  Erweiterung  ladt.
              Theoretisch verfugt eine Erweiterung nicht uber  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-offentlichen
              Verzeichnis  gespeichert  wird  ist   allerdings   ein   starkes
              Anzeichen  dafur,  dass  es  keine  normale  gemeinsam  benutzte
              Bibliothek  ist.  Falls   dieses   Programm   tatsachlich   eine
              Erweiterung  ist, ignorieren Sie die Warnung. Allerdings besteht
              immer die Moglichkeit, 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 beschadigt und muss repariert werden.

       Abh"angigkeit  von  Bibliothek  k"onnte  vermieden werden, falls Programm
       nicht unn"otigerweise dagegen gelinkt w"are (es verwendet  keines  seiner
       Symbole.
              Keines der Programme die gegen Bibliothek gelinkt sind verwendet
              eines der von der Bibliothek bereitgestellten Symbole. Indem Sie
              die  Programme korrigierten, vermieden Sie die Abhangigkeit, die
              mit  dieser  Bibliothek  verbunden  ist  (es   sei   denn,   die
              Abhangigkeit  wird  auch durch eine andere Bibliothek generiert,
              die diese Bibliothek wirklich verwendet).

       Programm sollte nicht gegen Bibliothek  gelinkt  werden  (es  verwendet
       keines ihrer Symbole).
              Das  Programm  ist  gegen  eine Bibliothek gelinkt, die es nicht
              benotigt. Das ist kein Problem, aber  bei  der  Ladezeit  konnen
              kleine  Leistungsverbesserungen  erreicht  werden,  indem  diese
              Bibliothek nicht in das Programm  gelinkt  wird.  Diese  Warnung
              uberpruft  die  gleichen  Informationen  wie  die vorhergehende,
              allerdings fur jedes Programm statt global fur alle  uberpruften
              Programme.

FEHLER

       dpkg-shlibdeps wird fehlschlagen, falls es eine vom Programm verwendete
       offentliche Bibliothek nicht finden kann oder  falls  diese  Bibliothek
       keine   zugeordneten   Abhangigkeitsinformationen  hat  (entweder  eine
       Shlibs- oder Symbols-Datei).  Eine  offentliche  Bibliothek  hat  einen
       SONAME und ist versioniert (libirgendwas.so.X). Eine private Bibliothek
       (wie z.B. ein Erweiterung) sollte keinen SONAME haben und braucht nicht
       versioniert zu sein.

       konnte  Bibliothek  SONAME-der-Bibliothek  ben"otigt  von Programm nicht
       finden (ihr RPATH ist >>rpath<<).
              Das   Programm   verwendet    eine    Bibliothek    mit    Namen
              SONAME-der-Bibliothek,    aber   dpkg-shlibdeps   konnte   diese
              Bibliothek nicht finden. dpkg-shlibdeps erstellt  folgendermaBen
              eine   Liste  der  zu  prufenden  Verzeichnisse:  im  RPATH  des
              Programms   aufgefuhrte   Verzeichnisse,   in    /etc/ld.so.conf
              aufgefuhrte     Verzeichnisse,    in    der    Umgebungsvariable
              LD_LIBRARY_PATH  aufgefuhrte  Verzeichnisse  und  standardmaBige
              offentliche  Verzeichnisse  (/lib, /usr/lib, /lib32, /usr/lib32,
              /lib64,  /usr/lib64).  Dann  pruft  es  diese  Verzeichnisse  im
              Bau-Baum    des    analysierten   Pakets,   in   den   mit   der
              Kommandozeilenoption -S  angegebenen  Paketbauverzeichnisse,  in
              anderen    Paketbau-Baumen,   die   eine   DEBIAN/shlibs-   oder
              DEBIAN/symbols-Datei    enthalten     und     schlieBlich     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,  mussen  Sie  das
              Verzeichnis zu LD_LIBRARY_PATH hinzufugen.  Falls  sie  sich  in
              einem  anderen  gerade  zu  bauenden  Paket befindet, mussen Sie
              sicherstellen, dass die >>shlibs/symbols<<-Datei  dieses  Pakets
              bereits  angelegt  ist  und  dass  LD_LIBRARY_PATH das geeignete
              Verzeichnis  enthalt,  falls  die  Bibliothek  zudem  in   einem
              privaten Verzeichnis liegt.

       Keine  Abh"angigkeitsinformationen  f"ur  Bibliotheksdatei (verwendet von
       Programm) gefunden.
              Die von Programm benotigte Bibliothek wurde  von  dpkg-shlibdeps
              in  Bibliotheksdatei  gefunden, allerdings konnte dpkg-shlibdeps
              keine Abhangigkeitsinformationen fur diese Bibliothek ermitteln.
              Um   die  Abhangigkeit  herauszufinden,  hat  es  versucht,  die
              Bibliothek mittels dpkg -S Bibliotheksdatei auf ein Debian-Paket
              abzubilden.  Dann  uberprufte  es  die  zugehorigen  Shlibs- und
              Symboldateien  in  /var/lib/dpkg/info/  und  die   verschiedenen
              Paketbaubaume ((debian/*/DEBIAN/).

              Dieser  Fehlschlag kann durch defekte oder fehlende Shlibs- oder
              Symboldateien im  Paket  der  Bibliothek  ausgelost  werden.  Er
              konnte   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 mussen,
              damit  die  Shlibs-Datei  erstellt  wird  bevor   dpkg-shlibdeps
              aufgerufen  wird).  Defekte  RPATH konnen auch dazu fuhren, 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;  dpkg-shlibdeps versucht dies zu umgehen, indem
              es   auf   einen   kanonischen   Namen   (mittels   realpath(3))
              zuruckfallt,    allerdings    konnte    dies    manchmal   nicht
              funktionieren. Es ist immer am besten, den RPATH zu  bereinigen,
              um Probleme zu vermeiden.

              Viele     weitere     Informationen     daruber,     wo     nach
              Abhangigkeitsinformationen  gesucht  wird,  konnen  durch  einen
              Aufruf  von  dpkg-shlibdeps im geschwatzigen Modus (-v) erhalten
              werden. Dies kann nutzlich  sein,  falls  Sie  nicht  verstehen,
              warum es Ihnen diesen Fehler meldet.

"UBERSETZUNG

       Die  deutsche  Ubersetzung  wurde  2004, 2006-2011 von Helge Kreutzmann
       <debian@helgefjell.de>, 2007 von Florian Rehnisch  <eixman@gmx.de>  und
       2008  von Sven Joachim <svenjoac@gmx.de> angefertigt. Diese Ubersetzung
       ist Freie Dokumentation; lesen  Sie  die  GNU  General  Public  License
       Version 2 oder neuer fur die Kopierbedingungen.  Es gibt KEINE HAFTUNG.

SIEHE AUCH

       deb-shlibs(5), deb-symbols(5), dpkg-gensymbols(1).

AUTOREN

       Copyright (C) 1995-1996 Ian Jackson
       Copyright (C) 2000 Wichert Akkerman
       Copyright (C) 2006 Frank Lichtenheld
       Copyright (C) 2007-2008 Raphael Hertzog

       Dies  ist  Freie  Software;  lesen  Sie  die GNU General Public License
       Version 2 oder neuer fur die Kopierbedingungen. Es gibt KEINE Haftung.