Provided by: manpages-de_4.26.0-1_all 

BEZEICHNUNG
ldd - Abhängigkeiten von Laufzeit-Bibliothek ausgeben
ÜBERSICHT
ldd [Option]… Datei…
BESCHREIBUNG
ldd gibt die Laufzeit-Bibliotheken (dynamischen Bibliotheken) aus, die von jedem auf der Befehlszeile
angegebenen Programm oder jeder Laufzeit-Bibliothek benötigt werden. Eine beispielsweise Verwendung und
Ausgabe ist folgende:
$ ldd /bin/ls
linux-vdso.so.1 (0x00007ffcc3563000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f87e5459000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007f87e5254000)
libc.so.6 => /lib64/libc.so.6 (0x00007f87e4e92000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f87e4c22000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f87e4a1e000)
/lib64/ld-linux-x86-64.so.2 (0x00005574bf12e000)
libattr.so.1 => /lib64/libattr.so.1 (0x00007f87e4817000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f87e45fa000)
Im Normalfall ruft ldd den dynamischen Linker (siehe ld.so(8)) mit auf 1 gesetzter Umgebungsvariablen
LD_TRACE_LOADED_OBJECTS auf. Dadurch untersucht der dynamische Linker die dynamischen Abhängigkeiten des
Programms und findet (entsprechend der in ld.so(8) beschriebenen Regeln) die Objekte, die diese
Abhängigkeiten erfüllen und lädt sie. Für jede Abhängigkeit zeigt ldd den Ort des passenden Objektes und
die (hexadezimale) Adresse an, an der es geladen wird. (Die dynamischen Bibliotheken linux-vdso und
ld-linux sind besonders; siehe vdso(7) und ld.so(8).)
Sicherheit
Beachten Sie, dass unter bestimmten Bedingungen (z.B. wenn das Programm einen von ld-linux.so
verschiedenen ELF-Interpreter festlegt) einige Versionen von ldd versuchen könnten, die
Abhängigkeitsinformationen zu erhalten, indem sie versuchen, das Programm direkt ausführen, was dazu
führen könnte, dass beliebiger, im ELF-Interpreter des Programms und möglicherweise sogar im Programm
selbst vorhandener Code ausgeführt wird. (Vor Glibc 2.27 hat die Implementierung von ldd der
Originalautoren dies beispielsweise selbst durchgeführt, wobei allerdings die meisten Distributionen eine
veränderte Version bereitstellten, die dies nicht machte.)
Daher sollten Sie niemals ldd auf nicht vertrauenswürdigen Programmen anwenden, da dies zur Ausführung
beliebigen Codes führen könnte. Eine sichere Alternative für unvertrauenswürdige Programme ist:
$ objdump -p /Pfad/zu/Programm | grep NEEDED
Beachten Sie allerdings, dass diese Alternative nur die direkten Abhängigkeiten des Progamms zeigt,
während ldd den gesamten Abhängigkeitsbaum des Programms zeigt.
OPTIONEN
--version
Gibt die Versionsnummer von ldd aus.
--verbose
-v Gibt alle Informationen aus, schließt beispielsweise Symbolversionierungsinformationen mit ein.
--unused
-u Gibt alle unbenutzten direkten Abhängigkeiten aus. (Seit Glibc 2.3.4.)
--data-relocs
-d Führt Umplatzierungen durch und berichtet alle fehlenden Objekte (nur ELF).
--function-relocs
-r Führt Umplatzierungen für sowohl Datenobjekte als auch Funktionen durch und berichtet alle
fehlenden Objekte oder Funktionen (nur ELF).
--help Hinweise zur Verwendung.
FEHLER
ldd funktioniert mit dynamischen Bibliotheken im Format a.out nicht.
ldd funktioniert mit einigen extrem alten a.out-Programmen nicht, die gebaut wurden, bevor die
Unterstützung von ldd zu den Compiler-Veröffentlichungen hinzugefügt wurde. Falls Sie ldd mit einem
dieser Programme verwenden, wird das Programm versuchen, sich mit argc = 0 auszuführen und die Ergebnisse
werden nicht vorhersehbar sein.
SIEHE AUCH
pldd(1), sprof(1), ld.so(8), ldconfig(8)
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
Mailingliste der Übersetzer.
Linux man-pages 6.9.1 2. Mai 2024 ldd(1)