1.在Linux下,当程序崩溃时,会生成一个core文件,其中包含了程序崩溃时的内存状态信息。可以使用gdb调试器来分析core文件,定位到崩溃的代码位置。
具体步骤如下:
确认程序已经开启core dump功能。可以使用ulimit命令查看:
ulimit -a
如果core file size为0,则需要设置core dump大小:
ulimit -c unlimited
运行程序,让它崩溃,生成core文件。
使用gdb调试器打开core文件:
gdb <程序名> <core文件名>
使用bt命令查看调用栈信息,找到崩溃的位置:
bt
如果需要查看具体代码,可以使用list命令:
list &l