Použi ldd príkaz na zobrazenie zdieľaných knižníc potrebných pre akýkoľvek daný program - užitočné pre spracovanie, keď chýba závislosť. Príkaz tiež obsahuje chýbajúce funkcie a objekty.
ldd Syntax príkazov
Sledujte správnu syntax príkazu ldd, aby ste sa vyhli chybám:
ldd OPTION … FILE …
Použite jeden alebo viac dostupných príkazov ldd, ktoré sú vložené do priečinka VOĽBA miesto vo vyššie uvedenom príkaze: --help | vytlačte túto pomoc a ukončite jej verzia vytlačiť informácie o verzii a výstup -d, --data-relocs | procesné presuny údajov -r, - funkcia-relocs | procesné premiestňovanie údajov a funkcií -u, --unused | tlač nepoužívaných priamych závislostí -v, --verbose | vytlačte všetky informácie Ak chcete získať viac informácií o programe, spustite nasledujúci príkaz: $ ldd -v / cesta / do / program / spustiteľný súbor
Výstup zobrazuje informácie o verzii, ako aj cesty a adresy do zdieľaných knižníc, napríklad: $ ldd libshared.so linux-vdso.so.1 => (0x00007fff26ac8000) libc.so.6 => /lib/libc.so.6 0x00007ff1df55a000) /lib64/ld-linux-x86-64.so.2 (0x00007ff1dfafe000)
Ak súbor SO neexistuje vôbec, chýbajúce knižnice nájdete pomocou nasledujúceho príkazu: $ ldd -d cesta / do / programu
Výstup je podobný nasledujúcemu: linux-vdso.so.1 (0x00007ffc2936b000) /home/gary/demo/garylib.so => nie je foundlibc.so.6 => usr / lib / libc.so.6 (0x00007fd0c6259000) /lib64/ld-linux-x86-64.so.2 (0x00007fd0c65fd000)
Nikdy nespúšťajte príkaz ldd proti nedôveryhodnému programu, pretože ldd ho môže skutočne vykonať. Namiesto toho použite bezpečnejšiu alternatívu, ktorá zobrazuje iba priame závislosti a nie celý strom závislosti: $ objdump -p / path / to / program grep POTREBNÉ Musíte poskytnúť úplnú cestu k aplikácii, ak chcete nájsť jej závislosti s ldd, čo môžete urobiť niekoľkými spôsobmi. Napríklad takto nájdete cestu k Firefoxu: $ find / -name firefox
Problém s príkazom nájsť však je, že nebude obsahovať len spustiteľný súbor, ale všade, kde sa nachádza Firefox, a to takto: Tento prístup je trochu prehnaný a možno budete musieť použiť príkaz sudo na zvýšenie vašich privilégií, inak je pravdepodobné, že dostanete veľa chýb povolených povolenia. Namiesto toho je oveľa jednoduchšie použiť príkaz ifis na nájdenie cesty aplikácie: $ whereis firefox
Tentokrát výstup môže vyzerať takto: / Usr / bin / firefox / Etc / firefox / Usr / lib / firefox Všetko, čo musíte urobiť, ak chcete nájsť zdieľané knižnice pre Firefox, je zadajte nasledujúci príkaz: $ ldd / usr / bin / firefox
Výstup z príkazu bude takýto: linux-vdso.so.1 (0x00007ffff8364000)libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007feb9917a000)libdl.so.2 => /usr/lib/libdl.so.2 (0x00007feb98f76000)libstdc ++ .to.6 => /usr/lib/libstdc++.so.6 (0x00007feb98bf4000)libm.so.6 => /usr/lib/libm.so.6 (0x00007feb988f6000)libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007feb986e0000)libc.so.6 => /usr/lib/libc.so.6 (0x00007feb9833c000)/lib64/ld-linux-x86-64.so.2 (0x00007feb99397000) Linux-vdso.so.1 je názov knižnice a hexadecimálne číslo je adresa, kam sa knižnica načíta v pamäti. Na mnohých ďalších riadkoch si všimnete, že po symbole => nasleduje cesta. Toto je cesta k fyzickej binárne; hexadecimálnym číslom je adresa, na ktorej bude knižnica načítaná. Ako používať príkaz ldd
Ako nájsť cestu k aplikácii









![Ako otestovať rýchlosť internetu [jednoduché, menej ako 5 minút] Ako otestovať rýchlosť internetu [jednoduché, menej ako 5 minút]](https://i.go-travels.com/img/how-to/how-to-test-your-internet-speed.png)


