table of contents
ldd(1) | General Commands 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. (Før glibc 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¶
- --version
- Vis versionsnummeret for ldd.
- --verbose
- -v
- Vis al information, inklusive, for eksempel, symbolversioneringsinformation.
- --unused
- -u
- Vis ubrugte direkte afhængihgeder. (Siden glibc 2.3.4).
- --data-relocs
- -d
- Udfører flytninger og rapporterer om manglende objekter (kun ELF).
- --function-relocs
- -r
- Udfører flytninger for både dataobjekter og funktioner, og rapporterer alle manglende objekter eller funktioner (kun ELF).
- --help
- 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Ŷ
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.
2. maj 2024 | Linux man-pages (ej udgivet) |