Scroll to navigation

LDD(1) Linuxprogrammørens manual LDD(1)

NAVN

ldd - vis delte objektafhængigheder

SYNOPSIS

ldd [tilvalg]... fil...

BESKRIVELSE

ldd viser de delte objekter (delte biblioteker) krævet af hvert program eller hvert objekt specificeret på kommandolinjen. Et eksempel på dets brug og resultat:


$ 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)

I det normale tilfælde igangsætter ldd den dynamiske standardlænker (se ld.so(8) med miljøvariablen LD_TRACE_LOADED_OBJECTS sat til 1. Dette får den dynamiske lænker til at inspicere programmets dynamiske afhængigheder og finde (jævnfør reglerne beskrevet i ld.so(8)) og indlæse objekterne, der opfylder disse afhængigheder. For hver afhængighed viser ldd placeringen af det matchende objekt og adressen (hexadecimal) hvorpå objektet er indlæst. (De delte afhængigheder linux-vdso og ld-linux er specielle; se vdso(7) og ld.so(8).)

Sikkerhed

Vær opmærksom på at i nogle tilfælde (f.eks. hvor programmer specificerer en anden ELF-fortolker end ld-linux.so) kan nogle versioner af ldd forsøge at indhente afhængighedsinformation ved direkte at forsøge at afvikle programmet, hvilket kan føre til afviklingen af kode uanset koden defineret i programmets ELF-fortolkler, og måske til afviklingen af selve programmet. (I glibc-versioner før 2.27 gjorde f.eks. opstrømsimplementeringen af ldd dette, selvom de fleste distributioner tilbød en ændret version, der ikke gjorde dette).

Du bør derfor aldrig anvende ldd på en utroværdig kørbar fil, da dette kan medføre afviklingen af arbitrær kode. Et mere sikkert alternativ, når utroværdige kørbare filer håndteres, er:


$ objdump -p /sti/til/program | grep NEEDED

Bemærk dog at dette alternativ kun viser de direkte afhængigheder for den kørbare fil, da ldd viser hele afhængighedstræet for den kørbare fil.

TILVALG

Vis versionsnummeret for ldd.
Vis al information, inklusive, for eksempel, symbolversioneringsinformation.
Vis ubrugte direkte afhængihgeder. (Siden glibc 2.3.4).
Udfører flytninger og rapporterer om manglende objekter (kun ELF).
Udfører flytninger for både dataobjekter og funktioner, og rapporterer alle manglende objekter eller funktioner (kun ELF).
Information om brug.

FEJL

ldd fungerer ikke på a.out-delte biblioteker.

ldd fungerer ikke med nogle ekstremt gamle a.out-programmer, der blev bygget før ldd-understøttelse blev tilføjet til kompilerudgivelserne. Hvis du bruger ldd på et af disse programmer, så vil programmet forsøge at blive afviklet med argc = 0 og resultaterne vil være uforudsigelige.

SE OGSÅ

pldd(1), sprof(1), ld.so(8), ldconfig(8)

KOLOFON

Denne side er en del af udgivelse 5.13 for Linux man-pages-projektet. En beskrivelse af projektet, information om fejlrapporter og den seneste version af denne side, kan findes på https://www.kernel.org/doc/man-pages/.

OVERSÆTTELSE

Oversættere af denne manual til dansk Joe Hansen <joedalton2@yahoo.dk>

Denne oversættelse er gratis dokumentation; læs GNU General Public License version 3 eller nyere for ophavsretbetingelser. Der er INGEN ANSVAR.

Hvis du støder på fejl i oversættelsen af ​​denne vejledning, skal du sende en besked til debian-l10n-danish@lists.debian.org.

27. august 2021