5

ELF 格式在哪里存储导入函数的名称?是否总是可以枚举所有导入名称,例如 PE 可执行文件?

例如,如果一个二进制文件正在使用printf,是否可以通过对二进制文件本身的静态分析来判断它是否使用?

4

1 回答 1

7

在 ELF 中,它们被称为未定义符号。您可以通过以下方式查看未定义符号的列表:

  • nm -D <file>|grep -w U

  • objdump -T <file>|grep "\*UND\*"

ELF 文件没有指定哪些符号来自哪些库;它只是将共享库列表添加到 ELF 二进制文件中,并让链接器在库中查找符号。

于 2012-05-07T10:51:59.537 回答