gcc 和 clang 都有选项 -gcolumn-info
,其描述如下:
Emit location column information into DWARF debugging information, rather than just file and line.
我已经使用此选项编译了我的二进制文件。现在我有一些指令的地址,想将其翻译回源文件、行号和列。有没有办法在gdb中做到这一点?是否有其他工具可以提取此信息?
我知道我可以在gdb中使用info line *0xabcd1234
来获取与该地址对应的源文件和行,但它不显示该列。
最佳答案
在回答我的问题时,我找到了一种使用lldb
和图像查找
命令获取信息的方法:
(lldb) image lookup --address 0x134adc
Address: libaaa.so[0x0000000000134adc] (libaaa.so.PT_LOAD[0]..text + 1030908)
Summary: libaaa.so`test() + 272 at test.cpp:1842:124
关于GDB - 将地址映射到源代码中的行和列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58358817/