当我运行带有段错误的程序时,我收到一条错误消息Segmentation fault: 11。出于某种原因,我没有收到(核心转储)消息。我尝试运行 shell 命令ulimit -c unlimited
,但我仍然得到同样的错误,它并没有说核心转储。我是 GDB 的新手,所以我用一个简单的程序进行了尝试:
/* coredump.c */
#include <stdio.h>
int main (void) {
int *point = NULL;
*point = 0;
return 0;
}
但是当我使用编译时:
gcc coredump.c -g -o coredump
运行它,它仍然说segfault: 11
它是否仍在我不知道的地方创建核心转储?我希望能够使用gdb coredump core。