Ldd forditva

Fórumok

Sziasztok!

Mint ismert, az ldd paranccsal megtudhatom, hogy egy adott futtathato allomany milyen konyvtarakat hasznal, nos az lenne a problemam, hogy nekem erre a dologra forditva lenne szuksegem, tehat egy adott xxxx.so konyvtarat mely allomanyok hasznalnak. Van erre megoldas? Beepitett parancs vagy script?

Kosz a valaszokat.

Hozzászólások

lsof?
Kiirja a filenevet es a PIDet.

--
I can't believe Steve Jobs's liver is replaceable but the battery in my iPhone is not. - sickipedia

Ilyesmihez mit szolsz?


find ${PATH//:/ } -type f -executable -exec ldd {} + \
  | perl -ne '( $bin = $_ ) =~ s/:$// unless /^\s/; print $bin if /libfoo.so/'

Ez lefuttatja az ldd-t a PATHodban levo osszes futtathato file-ra (amiben persze lesz boven nem dinamikusan linkelt binaris is, de az kit erdekel), aztan vegigmegy a kimeneten, felreteszi az aktualis binaris nevet (azt a sort, ami nem whitespace-szel kezdodik a zaro kettospont nelkul), majd printeli azt, ha ratalalt az altalad keresett .so file-ra.

megjegyzes: az ldd-t soha ne futtasd nem megbizhato forrasbol szarmazo binarisokon.