diary/Kojima/2019-10-25
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[diary/Kojima]]
・get_depends.py/query_depends.py
MLの方でライブラリの互換性とかの話が出ているので、遅まき...
get_depends.py は /usr/bin や /usr/lib 等にあるバイナリフ...
使い方としては、まず get_depends.py を root 権限で走らせ...
$ ./query_depends.py -h
Usage:
./query_depends.py [-b name] [-p path ] [-s soname ] [-...
./depends.sql3 データベースを用いて,ライブラリの依存...
-b name: name が含まれるELF形式のバイナリファイルが使...
-b cat とすれば /bin/cat だけでなく,bdftruncate ...
-b の場合,パス名は見ずに,ファイル名のみで検索する
-p name: 検索の際にパス名も含めてマッチさせる.-p /bi...
-s soname: 共有ライブラリ soname を利用するバイナリフ...
-s libgtk libgtk-3.so.0 や libgtk-x11-2.0.so もマ...
-s の場合,パス名は見ずに,共有ライブラリ名のみで...
-r realname: 検索の際にライブラリのパス名も含める
例えば、 /usr/sbin/httpd が使うライブラリを調べたい場合は
query_depends.py -p /usr/sbin/httpd を実行する。
$ ./query_depends.py -p /usr/sbin/httpd
/usr/sbin/httpd needs these libraries
b'linux-vdso.so.1 (0x00007ffe927ae000)'()
b'libpcre.so.1(/usr/lib/libpcre.so.1)
b'libaprutil-1.so.0(/usr/lib/libaprutil-1.so.0)
b'libapr-1.so.0(/usr/lib/libapr-1.so.0)
b'libpthread.so.0(/lib/libpthread.so.0)
b'libc.so.6(/lib/libc.so.6)
b'libexpat.so.1(/usr/lib/libexpat.so.1)
b'libuuid.so.1(/usr/lib/libuuid.so.1)
b'librt.so.1(/lib/librt.so.1)
b'libcrypt.so.1(/lib/libcrypt.so.1)
b'libdl.so.2(/lib/libdl.so.2)
b'/lib/ld-linux-x86-64.so.2(b'/lib/ld-linux-x86-64.so.2)
あるライブラリ(例えば /usr/lib/libgtk-x11-2.0.so.0) を使...
$ ./query_depends.py -s libgtk-x11-2.0
b'libgtk-x11-2.0.so.0 used by these binaries
uim-input-pad-ja(/usr/bin/uim-input-pad-ja)
uim-im-switcher-gtk(/usr/bin/uim-im-switcher-gtk)
uim-pref-gtk(/usr/bin/uim-pref-gtk)
uim-toolbar-gtk(/usr/bin/uim-toolbar-gtk)
uim-toolbar-gtk-systray(/usr/bin/uim-toolbar-gtk-systr...
gtk-query-immodules-2.0(/usr/bin/gtk-query-immodules-2...
gtk-demo(/usr/bin/gtk-demo)
wnckprop-1(/usr/bin/wnckprop-1)
wnck-urgency-monitor-1(/usr/bin/wnck-urgency-monitor-1)
....
依存関係のチェックには ldd コマンドを使っているので、厳密...
コマンドファイル(Python スクリプト)は、このページへの添付...
#comment
終了行:
[[diary/Kojima]]
・get_depends.py/query_depends.py
MLの方でライブラリの互換性とかの話が出ているので、遅まき...
get_depends.py は /usr/bin や /usr/lib 等にあるバイナリフ...
使い方としては、まず get_depends.py を root 権限で走らせ...
$ ./query_depends.py -h
Usage:
./query_depends.py [-b name] [-p path ] [-s soname ] [-...
./depends.sql3 データベースを用いて,ライブラリの依存...
-b name: name が含まれるELF形式のバイナリファイルが使...
-b cat とすれば /bin/cat だけでなく,bdftruncate ...
-b の場合,パス名は見ずに,ファイル名のみで検索する
-p name: 検索の際にパス名も含めてマッチさせる.-p /bi...
-s soname: 共有ライブラリ soname を利用するバイナリフ...
-s libgtk libgtk-3.so.0 や libgtk-x11-2.0.so もマ...
-s の場合,パス名は見ずに,共有ライブラリ名のみで...
-r realname: 検索の際にライブラリのパス名も含める
例えば、 /usr/sbin/httpd が使うライブラリを調べたい場合は
query_depends.py -p /usr/sbin/httpd を実行する。
$ ./query_depends.py -p /usr/sbin/httpd
/usr/sbin/httpd needs these libraries
b'linux-vdso.so.1 (0x00007ffe927ae000)'()
b'libpcre.so.1(/usr/lib/libpcre.so.1)
b'libaprutil-1.so.0(/usr/lib/libaprutil-1.so.0)
b'libapr-1.so.0(/usr/lib/libapr-1.so.0)
b'libpthread.so.0(/lib/libpthread.so.0)
b'libc.so.6(/lib/libc.so.6)
b'libexpat.so.1(/usr/lib/libexpat.so.1)
b'libuuid.so.1(/usr/lib/libuuid.so.1)
b'librt.so.1(/lib/librt.so.1)
b'libcrypt.so.1(/lib/libcrypt.so.1)
b'libdl.so.2(/lib/libdl.so.2)
b'/lib/ld-linux-x86-64.so.2(b'/lib/ld-linux-x86-64.so.2)
あるライブラリ(例えば /usr/lib/libgtk-x11-2.0.so.0) を使...
$ ./query_depends.py -s libgtk-x11-2.0
b'libgtk-x11-2.0.so.0 used by these binaries
uim-input-pad-ja(/usr/bin/uim-input-pad-ja)
uim-im-switcher-gtk(/usr/bin/uim-im-switcher-gtk)
uim-pref-gtk(/usr/bin/uim-pref-gtk)
uim-toolbar-gtk(/usr/bin/uim-toolbar-gtk)
uim-toolbar-gtk-systray(/usr/bin/uim-toolbar-gtk-systr...
gtk-query-immodules-2.0(/usr/bin/gtk-query-immodules-2...
gtk-demo(/usr/bin/gtk-demo)
wnckprop-1(/usr/bin/wnckprop-1)
wnck-urgency-monitor-1(/usr/bin/wnck-urgency-monitor-1)
....
依存関係のチェックには ldd コマンドを使っているので、厳密...
コマンドファイル(Python スクリプト)は、このページへの添付...
#comment
ページ名: