2

我们有一种情况(简化):

  1. test()存在于source.c
  2. source.c编译为object.o
  3. object.o链接到存档archive.a
  4. archive.a被编译成finalbinary

我们正在尝试将名称更改为test()其他名称。但是(4)中的链接步骤表明新方法签名不存在。使用gobjdump我们可以肯定地看到新的重命名方法存在于object.o(它与其他方法在同一个 SECT 中并且不是 UND)。

我们可以肯定地看到object.o存​​在于archive.a. 但是,我们不确定(由于复杂的构建系统)archive.a包含该方法。

TL;DR:有没有办法查看存档文件内部并列出其中特定二进制对象的功能?

4

1 回答 1

1

使用nm. 假设是 Linux,这里是手册页

于 2015-05-05T15:09:50.513 回答