GCC的backtrace_symbols()
仅解析动态符号,因为处理所有类型的符号为something GCC maintainers do not want to get into。
我如何自己提取从GCC backtrace()
函数中获取的非动态符号?
答案 0 :(得分:1)
使用bfd查看addr2line
做了什么。这是我成功使用的一种方法。
更具体地说,backtracefilt基本上可以让你在那里,你只需要调整它来从回溯中获取地址而不是解析文件。
答案 1 :(得分:1)
libdw
是elfutils的一部分,可用于读取使用-g
编译时存在的DWARF调试信息。