c - objdump 如何使用 -S 选项设法显示源代码?

标签 c linux gcc disassembly objdump

二进制文件中是否有对源文件的引用?我尝试在二进制文件上运行字符串,但找不到对列出的源文件的任何引用...

最佳答案

objdump 使用编译成二进制文件的 DWARF 调试信息,它引用源文件名。如果二进制文件未使用调试信息编译,或者 objdump 找不到源文件,那么您不会在输出中获得源代码 - 只有程序集。

在二进制文件上使用 strings 时看不到源文件名,因为 DWARF 使用压缩。

关于c - objdump 如何使用 -S 选项设法显示源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2511018/

相关文章:

php - 长时间运行的 PHP 脚本在通过 exec() 调用时停止,但在通过 CLI 调用时结束

c - Eclipse 项目不能包含 tchar.h

c++ - 尝试编译 webdis 时出错

c# - 从 C# 程序访问 DLL 中的方法

C 多维数组,不兼容的赋值

linux - 通过单独终端中的管道输入

java - 如何轮换来自同一台机器的每个请求的IP地址

c++ - gpsd的交叉编译显示 “unrecognized option”

java - 如何在 Android NDK 中通过 JNI 调用 C 函数以 Java 字符串形式返回数据

c - 内存泄漏。无法释放 malloc'ed char*