PE実行可能ファイルの場合、インポートしたシンボルを次のようにリストできます
dumpbin /imports FILE.EXE
またはGUIアプリケーションである依存ユーティリティを使用します。
`nm ELF-binary 'は単に「記号なし」を返します。
Objdump -T 'ELF-file'を試してください
私はreadelf
を好みます。
readelf -s <file>
Objdumpからの出力はこの目的のために少し過剰であり、実際のインポートを見つけるために十分な解析が必要です。
私はこの目的のためにreadelfを好む:
readelf -d dynamic-buffer-test
Dynamic section at offset 0x630a8 contains 23 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
ご覧のとおり、必要なライブラリには「NEEDED」というマークが付いています。
ここに掲載されている他の回答とともに、別の回答を提案したいと思います。印刷される内容はファイル形式の関数であり、ELFはこの問題をうまく解決します。
objdump -p /path/to/binary | grep NEEDED
Grepは単にDynamic Section
の内容を抽出しますが、これはobjdump -p
出力の形式であり、これが単純なソリューションになります。