0

我曾经使用 GDB 来调试我的 C/C++ 程序。但是在服务器崩溃并重新安装后,GDB 无法正常工作。在程序报告“核心转储”后,实际上没有找到核心文件。我要编译的标志是:

CFLAGS=     -ggdb -g -pg -Wall -O2 $(shell pkg-config --libs glib-2.0 gthread-2.0 --cflags glib-2.0)

我也设置了这个:

ulimit -c unlimited

我已经删除了所有对象/可执行文件并重新编译。但是核心文件根本就不见了。有人能说出其他可能的原因吗?谢谢。

4

1 回答 1

1

在我的机器(Ubuntu 12.04)上,文件/proc/sys/kernel/core_pattern将核心转储结果通过管道传输到/usr/share/apport/apport

|/usr/share/apport/apport %p %s %c

所以改为模式:

sudo bash -c 'echo core.%e.%p > /proc/sys/kernel/core_pattern'

有用。

参考:无法为我崩溃的程序创建核心文件

于 2013-11-13T08:34:03.187 回答