0

我目前面临 glibc v2.22 的问题,我无法获得正确的展开信息。当有 SIGABRT 应用程序时,它正在从 glibc 调用 abort 函数。它应该使用在构建中启用的展开信息。但是,它正在扫描堆栈(如屏幕截图中地址下方的红线所示)并提供如所附屏幕截图所示的误导信息(使用 sentry 分析转储)。

在这里,do_crash被调用,assert(0)然后中止主应用程序。在分析转储时,do_crash 函数调用_fini从未在主应用程序堆栈中的 。

我通过使用为 glibc 启用了 unwind CFLAGS += "-funwind-tables"。我也尝试过使用 and 之类的标志-rdynamic-fno-omit-frame-pointer但也没有用。

我在这里错过了什么吗?如何获得信号的完整回溯,尤其是 SIGABRT?

提前致谢在此处输入图像描述

4

0 回答 0