一:允许生成Core文件更多详细方法
1.ulimit -a 查看是否允许生成core文件
这里写图片描述
此时大小限制为0,是不允许产生core文件的,使用命令不限制core文件大小

ulimit -S -c unlimited 

这里写图片描述
此时就允许生成core文件。

为了每次重启后生效修改~/.bash_profile中加入ulimit -S -c unlimited > /dev/null 2>&1

二:Missing separate debuginfos, use: debuginfo-install glibc-XXX
经过上述设置之后可以生成core文件,然后使用gdb xxx.core文件调试,此时可能出现如下错误:
Missing separate debuginfo for the main executable file
Try: yum –enablerepo=’-debug’ install /usr/lib/debug/.build-id/4f/e3aa0a6528ea8ec9f72cb94e4a12d11bd7c4b2,如下图:
这里写图片描述

此时需要安装glibc
1、需要先修改“/etc/yum.repos.d/CentOS-Debuginfo.repo”文件的enable=1;

2、使用 sudo yum install glibc 安装;

3、使用 debuginfo-install glibc-2.12-1.132.el6.i686 安装。
这里写图片描述

此时安装完成。

三:调试Core
例如:运行程序为 main 生成了core.运行gdb

eg:运行程序为main core为core.13370
gdb 运行程序 运行程序对应的core
gdb main core.13370 
然后使用bt命令查看信息

这里写图片描述

参考博客:Linux环境下段错误的产生原因及调试方法小结

Logo

更多推荐