我正在编写一些崩溃报告代码,需要从一个核心转储文件中提取stacktrace。在
目前,我正在使用子进程调用来:
'gdb -q -batch -nx -x /path/to/executable /path/to/coredump'
并向它传递一个命令文件,其中包含以下内容:
^{pr2}$这很好,但是我必须解析输出,这看起来有点容易出错。在
另一种选择可能是使用pygdb2包,但我不太确定它是否解决了我感兴趣的问题,因为包的描述提到从正在调试的python进程控制gdb。https://bitbucket.org/antocuni/pygdb2/
有什么建议吗?在
谢谢! 马修
gdb支持运行python命令: https://sourceware.org/gdb/onlinedocs/gdb/Python-API.html#Python-API
解决方案仍然是将gdb作为子进程运行,但是在cmd文件中,运行一个python脚本,该脚本将堆栈转储到json文件中。这比原始文本更容易解析。在
相关问题 更多 >
编程相关推荐