我正在做一个Qt项目。以下是我的设置细节。 - Qt版本:Qt 5.5.1(qnx) - 套件信息:6.6.0 armv7的QNX的Qt5.5.1的静态 - 编译器:QNX 6.6.0 armv7的QCC - Qt Mkspec:qnx-armle-v7-qcc
我想要做的是在我的项目中在运行时捕获SIGSEGV信号并在控制台本身打印回溯迹。我可以使用backtrace()/ backtrace_symbols()在Linux中轻松获得回溯。但由于QNX中没有“execinfo.h”文件,我无法使用backtrace()/ backtrace_symbols()函数。
所以,我想下载“execinfo.h”文件并将其添加到我的项目中。而且我相信我也需要相应的库,但目前还不知道库名。
有人可以对以下内容发表评论吗? 1.哪个是“execinfo.h”文件的相应库? 2.我需要获取/下载什么才能使QNX中的backtrace()/ backtrace_symbols()功能正常? 3.是否有任何替代方案可以打印背面痕迹&控制台本身的符号 在Qt / Qnx项目中?
答案 0 :(得分:0)
当然,您可以尝试使用libBacktrace.so,更具体地说是bt_get_backtrace()API。以下是QNX 6.6.0的文档:
有关于API易碎且不受支持的警告,因此请自担风险。