在Windows上,我们可以使用dbgHelp库获取调试符号
我们怎样才能在UNIX / linux(用c ++)上做到这一点?
谢谢:)
答案 0 :(得分:3)
这取决于您使用的Unix版本或Linux发行版。对于Debian和Debian派生的发行版(如Ubuntu),您需要使用普通的包管理器安装debug packages。 Fedora使用debuginfo rpms添加调试符号。对于其他系统,我担心你必须自己搜索。
答案 1 :(得分:1)
我很确定现在所有版本的unix都使用相同的格式进行调试。例如,Linux使用了至少两种格式,后者使用了几种版本。那个,DWARF(是的,它是一个文字游戏,与ELF一起出现,它是对象格式)被标准化并被其他一些Unix使用。 libdwarf有几种变体,旨在帮助读取调试信息。首先看一下你的unix供应商是否提供了一个(例如IBM在AIX上做的ISTR,有几个Linux发行版正在做同样的事情),如果没有,请在网上搜索一个合适的。