Isticmaalidda "ldd" ee Linux

Amarka ldd waxaa loo isticmaali karaa inuu ku tuso maktabadaha la wadaago ee looga baahan yahay barnaamij kasta oo la bixiyo.

Tani waxay faa'iido u leedahay in la shaqeeyo marka ay jirto ku-tiirsanaan la'aanta waxaana loo isticmaali karaa in lagu qoro hawlaha maqan iyo walxaha maqan.

Ldd Command-yada

Tani waa ereyga haboon marka la isticmaalayo amarka ldd:

ldd [OPTION] ... FILE ...

Halkaan waxaad ka heli kartaa taliska ldd ee la heli karo kaas oo lagu dhex gelin karo [OPTION] ee booska kor ku xusan:

- ku dhaji caawimaadkan iyo ka bixida - macluumaadka daabacaada daabacaadda iyo ka bixitaanka -data, dib u-dejinta macluumaadka habraaca -r, -faafinta-socodsiinta socodsiinta socodsiinta iyo shaqooyinka dejinta - -w, - ku dheji macluumaadka dhammaan macluumaadka

Sida loo Isticmaalo Talaabada Ldd

Waxaad isticmaali kartaa amarka soo socda si aad u hesho macluumaad dheeraad ah oo ka socda amarrada ldd:

ldd -v / path / to / program / executable

Soo saaridu waxay muujinaysaa macluumaadka warka iyo sidoo kale waddooyinka iyo cinwaanada maktabadaha la wadaago, sida tan:

ldd libshared.so linux-vdso.so.1 => (0x00007fff26ac8000) libc.so.6 => /lib/libc.so.6 0x00007ff1df55a000) /lib64/ld-linux-x86-64.so.2 (0x00007ff1dfafe000)

Haddii faylka SO uusan ku jirin, waxaad ka heli kartaa maktabadaha maqan ee isticmaalaya amarka soo socda:

ldd -d path / to / program

Soo saarku wuxuu la mid yahay kuwa soo socda:

linux-vdso.so.1 (0x00007ffc2936b000) /home/gary/demo/garylib.so => ​​looma helin foundlibc.so.6 => usr / lib / libc.so.6 (0x00007fd0c6259000) / lib64 / ld-linux-x86 -64.so.2 (0x00007fd0c65fd000)

Muhiim: Marnaba ha la socodsiin amarka ldd ee ka soo horjeeda barnaamij aan la isku halleynin maadaama ay amarkaasi dhab ahaantii fulin karaan. Tani waa bedel wanaagsan oo tusaya kaliya ku tiirsanaanta tooska ah ee maaha geedkii ku tiirsanaanta oo dhan: objdump -p / path / to / program | dufcadii NEDEED .

Sida Loo Helo Waddada Codsiga

Waa inaad bixisaa wadada buuxda ee codsiga haddii aad rabto inaad ku ogaatid ku-xidhnaanshaheeda ldd, oo aad samayn karto siyaabo badan.

Tusaale ahaan, tani waa sida aad u heli lahayd waddada Firefox :

raadi / magac-bixiyaha dab-demiska

Dhibaatada leh amarka helitaanka , si kastaba ha ahaatee, waa inaanu kaliya ku qorin fulinta laakiin meel kasta oo Firefox ku yaal, sida tan:

Qaabkani waa mid ka mid ah qandaraasyo waxaana laga yaabaa inaad u baahato inaad isticmaasho amarka sudo inaad kor u qaaddo mudnaantaada, haddii kale waxaad u badan tahay in aad hesho tiro badan oo ruqsad ah oo khalad ah.

Waa wax aad u fudud in la isticmaalo amarka meesha uu ku yaal si aad u hesho waddada codsiga:

meesha uu dab-demiska

Waqtigan xajmiga wuxuu u eg yahay sidan:

/ usr / bin / firefox

/ etc / firefox

/ usr / lib / dab-damis

Dhammaan inaad hadda sameysid si aad u ogaato maktabadaha la wadaago ee Firefox waxay ku qorantahay amarka soo socda:

ldd / usr / bin / firefox

Wax soo saarka amarka wuxuu noqon doonaa sidan oo kale:

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)

Linux-vdso.so.1 waa magaca maktabada iyo lambarka hexaha waa cinwaanka maktabadda lagu dhajin doono xasuusta.

Waxaad ku ogaan doontaa qaar badan oo ka mid ah xariiqyada kale ee = = calaamad uu raaco waddo. Tani waa jidka loo yaqaan ikhtiyaarka jirka; nambarku waa cinwaanka maktabadda lagu dhejiyo.