我正在分析一个核心文件,它说:
Program terminated with signal 5, Trace/breakpoint trap
从这一行我可以确定这是由于程序命中了GDB下的断点吗?
当上面的错误不是在调试器下运行时,有没有可能出现上述错误?
发布于 2019-08-20 20:15:23
不需要,程序不需要在调试器下运行才会发生这种情况。
尝试运行一个程序,然后使用kill -n 5 myProgram
(或等效的kill -s SIGTRAP
)。它将向有问题的程序发送一个SIGTRAP信号,这很可能会导致该程序终止。如果它在进程中产生了一个核心转储,那么它将显示您所显示的消息。
或者,正如评论中提到的那样,程序本身也可能发出了这个信号。
https://stackoverflow.com/questions/57572877
复制相似问题