对于 PE 可执行文件,我可以使用列出导入的符号
dumpbin /imports FILE.EXE
或者使用 Depends 实用程序(它是 GUI 应用程序)。
“nm ELF-binary” 仅返回“无符号”。
答案1
尝试这个:
objdump -T 'ELF-file'
答案2
objdump 的输出对于这个目的来说有点过多,需要进行大量的解析才能找到实际的导入。
我更喜欢读取以此目的:
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”。
答案3
我更喜欢readelf
。
readelf -s <file>
答案4
除了这里发布的其他答案之外,我还想提出另一个。打印的内容是文件格式的功能,其中 ELF 非常适合解决此问题。
objdump -p /path/to/binary | grep NEEDED
grep 只是提取的内容Dynamic Section
,但其输出格式objdump -p
使其成为一个简单的解决方案。