Ny baiko ldd dia azo ampiasaina mba hampisehoana anao ireo tranokala iombonana izay takiana amin'ny programa voatokana rehetra.
Ity dia ilaina amin'ny fanatanterahana rehefa misy fiankinan-dàlana tsy misy dikany ary azo ampiasaina hamaritana ny asa sy ny zavatra tsy hita.
ldd Command Syntax
Ity ny syntax mety amin'ny fampiasana ny baiko ldd:
ldd [OPTION] ... FILE ...Ireto misy ny ldd baikon'ny baiko izay azo alaina ao amin'ny toerana [OPTION] ao amin'ny baiko etsy ambony:
--hindranao printy ity fanampiana sy fivoahana ity - dika print version vaovao sy fivoahana -d, --data-relocs fikandrana angona angona -r, - dingan-drakitra momba ny dinganina sy ny fifindrana asa -u, - tsy ampiasaina print printy tsy miankina mivantana -v, --verbose mamoaka ny fampahalalana rehetraAhoana ny fampiasana ny baiko ldd
Azonao atao ny mampiasa ny baiko manaraka mba hahazoana fampahalalana bebe kokoa amin'ny baiko ldd:
ldd -v / lalana / amin'ny / programa / executableNy vokatra dia mampiseho fampahafantarana amin'ny version ary koa ny lalana sy adiresy ho an'ny tranombokim-pifandraisana, toy izao:
ldd libshared.so linux-vdso.so.1 => (0x00007fff26ac8000) libc.so.6 => /lib/libc.so.6 0x00007ff1df55a000) /lib64/ld-linux-x86-64.so.2 (0x00007ff1dfafe000)Raha toa ka tsy misy ny tahiry SO, dia azonao atao ny mahita ireto tranonkala tsy hita ireto mampiasa izao baiko manaraka izao:
ldd -d lalana / amin'ny / programaNy vokatra dia mitovy amin'ny manaraka:
linux-vdso.so.1 (0x00007ffc2936b000) /home/gary/demo/garylib.so => not foundlibc.so.6 => usr / lib / libc.so.6 (0x00007fd0c6259000) / lib64 / ld -linux-x86 -64.so.2 (0x00007fd0c65fd000)Zava-dehibe: Aza mihazakazaka ny ldd baiko manohitra ny programa tsy voamarina satria ny baiko dia mety hamoaka izany. Ity dia safidy azo antoka izay mampiseho ny miankina amin'ny miankina fa tsy ny angon-drakitra manontolo: objdump -p / path / to / program | grep NEEDED .
Fomba hahitana ny lalana mankany amin'ny fampiharana
Tsy maintsy manome ny làlana feno amin'ny fampiharana ianao raha te hahita ny fiankinany amin'ny ldd, izay azonao atao amin'ny fomba maro.
Ohatra, ity no fomba hahitanao ny làlana mankany Firefox :
find / name firefoxNy olana amin'ny baiko finday anefa dia tsy hoe ny lisitra afa-drakitra afa-drakitra afa-tsy ny executable ihany, fa na aiza na aiza misy an'i Firefox, toy izao:
- /etc/skel/.mozilla/firefox
- / Home // cache / Mozilla / Firefox
- /home//.mozilla/firefox
- / Usr / Bin / Firefox
- / Usr / lib / Firefox
- / Usr / lib / Firefox / Firefox
Ity fomba fiasa ity dia kely loatra amin'ny overkill ary mila mampiasa ny baiko sudo ianao mba hampitomboana ny tombontsoa azonao, fa raha tsy izany dia mety ho nahazo fahazoan-dalana be dia be ianao.
Fa mora kokoa ny mampiasa ny baiko whereis hahitana ny lalan'ny fangatahana:
whereis firefoxAmin'ity indray mitoraka ity dia mety ho tahaka izao ny vokatra:
/ usr / Bin / Firefox
/ etc / Firefox
/ usr / lib / Firefox
Ny zava-drehetra tokony hataonao mba hahitana ny tranokala iombonana ho an'ny Firefox dia manondro ity baiko manaraka ity:
ldd / usr / bin / firefoxNy vokatra avy amin'ny baiko dia toy izao:
linux-vdso.so.1 (0x00007ffff8364000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007feb9917a000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007feb98f76000)
libstdc ++. so.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)
Ny linux-vdso.so.1 dia ny anaran'ny tranomboky ary ny laharana hex dia ny adiresy izay ho entina ho fahatsiarovana.
Ho hitanao amin'ny ankabeazan'ny andalana hafa fa manaraka ny làlana ny => marika. Ity no lalana mankany amin'ny vola binary; Ny laharana hex dia ny adiresy izay hikolokoloana ny tranomboky.