我想在我的QNX程序中回溯堆栈中的函数,所以我查阅了QNX官方文档中的API。我按照官方文档中的示例代码调用libbacktrace.so中的bt_get_backtrace(),但是返回-1,程序报错“Not Spportted”。
但是,我可以通过调用 bt_load_memmap 和 bt_sprn_memmap 成功加载和打印 memmap。
如何解决这个问题?还有其他方法可以进行回溯吗?我尝试过 exeinfo.h 和 libunwind 但它们都不起作用。
QNX 上的 libbacktrace 不支持 aarch64 上的回溯。你最好使用 libunwind [0]。