使用 DWARF 信息将内存地址映射到行号

wic*_*ken 5 debugging dwarf

我有一个通过内存跟踪程序执行的应用程序。我试图用来readelf --debug-dump=decodedline获取内存地址/行号信息,但是我看到的内存地址与该转储给出的内存地址并不经常匹配。我写了一些东西来将每个地址与出现在 DWARF 数据中的“最新”地址相匹配——这似乎清理了一些东西,但我不确定这是否是解释这些数据的“官方”方式。

有人可以解释使用 DWARF 将程序地址映射到行号的确切过程吗?

Phi*_*ler 4

看看程序addr2line。如果不能完全解决您的问题,它可能会为您提供一些如何执行此操作的指导(例如,通过删除它,或链接其功能)。