ldd (zkratka z anglického – vypiš dynamické závislosti) je programátorský nástroj na systémech unixového typu, který pro zadaný spustitelný soubor nebo zadanou knihovnu vypíše všechny závislosti na dynamických knihovnách.

Jedná se o shellový skript kompatibilní s Bournovým shellem a jeho první verze pochází z roku 1996.

Používám je například při potřebě zkopírovat závislosti programu do chrootu.

Bezpečnost a alternativy Protože skript ldd v rámci svého běhu zkoumaný program zkouší, neměl by být používán na programy nedůvěryhodného původu. Přímo manuálová stránka nabízí pro zkoumání potenciálně nebezpečných programů alternativu v podobě volání programů objdump a grep:

user@home ~/ $ objdump -p /cesta/program | grep NEEDED

Příklad užití user@home ~/ $ ldd /usr/bin/mp3blaster linux-vdso.so.1 => (0x00007fff8fdff000) libsidplay.so.1 => /usr/lib/libsidplay.so.1 (0x00007f4ea98ec000) libvorbisfile.so.3 => /usr/lib/libvorbisfile.so.3 (0x00007f4ea96e4000) libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f4ea94b6000) libncurses.so.5 => /lib/libncurses.so.5 (0x00007f4ea9273000) libpthread.so.0 => /lib/libpthread.so.0 (0x00007f4ea9056000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f4ea8d41000) libm.so.6 => /lib/libm.so.6 (0x00007f4ea8abe000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f4ea88a7000) libc.so.6 => /lib/libc.so.6 (0x00007f4ea8523000) libogg.so.0 => /usr/lib/libogg.so.0 (0x00007f4ea831c000) libdl.so.2 => /lib/libdl.so.2 (0x00007f4ea8118000) /lib64/ld-linux-x86-64.so.2 (0x00007f4ea9b59000) user@home ~/ $ ldd /usr/lib/i386-linux-gnu/libstdc++.so.6.0.20 linux-gate.so.1 (0xb7733000) libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb75da000) libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb742f000) /lib/ld-linux.so.2 (0xb7734000) libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb7411000)

Odkazy Reference

Externí odkazy Manuálová stránka (anglicky)

Kategorie:Unixové programátorské nástroje