ldd(1) General Commands Manual ldd(1) BEZEICHNUNG ldd - Abhangigkeiten von Laufzeit-Bibliothek ausgeben UBERSICHT ldd [Option] Datei BESCHREIBUNG ldd gibt die Laufzeit-Bibliotheken (dynamischen Bibliotheken) aus, die von jedem auf der Befehlszeile angegebenen Programm oder jeder Laufzeit-Bibliothek benotigt 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 Abhangigkeiten des Programms und findet (entsprechend der in ld.so(8) beschriebenen Regeln) die Objekte, die diese Abhangigkeiten erfullen und ladt sie. Fur jede Abhangigkeit 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 konnten, die Abhangigkeitsinformationen zu erhalten, indem sie versuchen, das Programm direkt ausfuhren, was dazu fuhren konnte, dass beliebiger, im ELF-Interpreter des Programms und moglicherweise sogar im Programm selbst vorhandener Code ausgefuhrt wird. (Vor Glibc 2.27 hat die Implementierung von ldd der Originalautoren dies beispielsweise selbst durchgefuhrt, wobei allerdings die meisten Distributionen eine veranderte Version bereitstellten, die dies nicht machte.) Daher sollten Sie niemals ldd auf nicht vertrauenswurdigen Programmen anwenden, da dies zur Ausfuhrung beliebigen Codes fuhren konnte. Eine sichere Alternative fur unvertrauenswurdige Programme ist: $ objdump -p /Pfad/zu/Programm | grep NEEDED Beachten Sie allerdings, dass diese Alternative nur die direkten Abhangigkeiten des Progamms zeigt, wahrend ldd den gesamten Abhangigkeitsbaum des Programms zeigt. OPTIONEN --version Gibt die Versionsnummer von ldd aus. --verbose -v Gibt alle Informationen aus, schliesst beispielsweise Symbolversionierungsinformationen mit ein. --unused -u Gibt alle unbenutzten direkten Abhangigkeiten aus. (Seit Glibc 2.3.4.) --data-relocs -d Fuhrt Umplatzierungen durch und berichtet alle fehlenden Objekte (nur ELF). --function-relocs -r Fuhrt Umplatzierungen fur 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 Unterstutzung von ldd zu den Compiler-Veroffentlichungen hinzugefugt wurde. Falls Sie ldd mit einem dieser Programme verwenden, wird das Programm versuchen, sich mit argc = 0 auszufuhren und die Ergebnisse werden nicht vorhersehbar sein. SIEHE AUCH pldd(1), sprof(1), ld.so(8), ldconfig(8) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 31. Oktober 2023 ldd(1)