You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何分析触发Signal 6(Aborted)的Core Dump文件?

解读GDB Core Dump输出并定位崩溃原因

问题背景

尝试用GDB分析Core Dump文件,仅看到Program terminated with signal 6, Aborted.,无法定位根本原因,执行bt/where/thread命令得到如下输出:

[New LWP 28817]
 [New LWP 28812]
 [New LWP 28814]
 [New LWP 28816] 
 [New LWP 28813]
 [New LWP 28810]
 [New LWP 28815]

 **Program terminated with signal 6, Aborted.
 #0  0x00007f19e05ae2c7 in ?? ()**
 Program terminated with signal 6, Aborted.
 #0  0x00007f19e05ae2c7 in ?? ()
 "/data/coredumps/eea-amgr-xxxxxxxxxxxx-28810-6-1713991244" is a core file.
 Please specify an executable to debug.
(gdb) where
 #0  0x00007f19e05ae2c7 in ?? ()
 #1  0x00007f19e05af9b8 in ?? ()
 #2  0x0000000000000020 in ?? ()
 #3  0x0000000000000000 in ?? ()
 (gdb) bt
 #0  0x00007f19e05ae2c7 in ?? ()
 #1  0x00007f19e05af9b8 in ?? ()
 #2  0x0000000000000020 in ?? ()
 #3  0x0000000000000000 in ?? ()
 (gdb) thread
 [Current thread is 1 (LWP 28817)]

输出解读与解决步骤

1. 当前输出的核心问题:缺少可执行文件与调试符号

GDB提示Please specify an executable to debug.,说明你只加载了Core Dump,没加载生成该Core Dump的对应版本可执行文件。没有可执行文件的符号表,GDB无法将内存地址解析为函数名、文件名等信息,所以调用栈里全是??(未知符号)。

2. 先加载匹配的可执行文件

启动GDB时同时指定可执行文件和Core Dump:

gdb /path/to/your/eea-amgr-executable /data/coredumps/eea-amgr-xxxxxxxxxxxx-28810-6-1713991244

注意:必须使用与生成Core Dump完全一致的可执行文件——包括编译版本、编译参数(尤其是是否带-g调试符号),否则符号解析仍会失败。

3. Signal 6(SIGABRT)的含义

Signal 6是SIGABRT,触发场景通常有:

  • 程序主动调用abort()函数(比如断言assert()失败时,默认会调用abort())
  • 内存分配失败后,程序主动终止
  • 系统或其他进程向目标进程发送SIGABRT信号

4. 正确解读调用栈与线程信息

  • [New LWP xxx]:表示Core Dump包含多个线程(LWP是轻量级进程,对应线程)
  • 当前线程是LWP 28817,但崩溃可能发生在其他线程,执行以下命令查看所有线程的调用栈:
    thread apply all bt
    
  • 加载可执行文件后,用bt full查看完整调用栈,包含函数参数、局部变量,能更精准定位崩溃点。

5. 后续定位方向

  • 如果调用栈里出现assert()相关函数,查看断言条件即可知道触发原因
  • 如果是内存问题(比如越界、空指针),调用栈会显示崩溃时执行的业务函数,结合代码排查内存操作
  • 若可执行文件无调试符号,需重新编译带-g参数的版本,或获取对应版本的调试符号包

内容的提问来源于stack exchange,提问作者Sirius Black 11

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 18:52:55