我在Linux中使用了file命令来获取有关二进制文件的信息。我也在寻找这些电话所在的地址。我想我可以从GDB或objdump获得此信息,但是我对Linux命令和程序不是很好,因此非常感谢您的帮助。该文件命令的输出如下: br />
ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x6d232dd468b2344847a4b9c81eb064ffe257d5d0, stripped


#1 楼

使用nm代替字符串。未定义的符号(由U表示)将在外部(通过libc或其他方式)解析,而T(或t)符号在本地定义。小写表示本地符号,大写表示全局符号。

当然,这假定存在符号表。在您的示例中,它已被删除。

在这种情况下,您可以执行objdump -T文件列出外部引用。

#2 楼

您问题的答案很简单。您可以将nm命令与-D开关(或--dynamic)一起使用,或者将objdump-T开关一起使用。这两个命令都将输出动态符号表条目和它们源自的库。