前言
本文主要介绍,在Linux 下应用程序发生Segmentation fault 错误时,如何使用gdb 通过core dump文件查找错误具体发生的地方。
一、生成core dump文件
在板子上执行ulimit -c 或者 ulimit -a 命令查看core 文件大小的配置情况,如下图所示
此时 “ core file size ”大小为0,说明系统没有打开core dump,解决方法:
执行ulimit -c unlimited 命令,让系统可以产生core dump文件
二、Core dump 文件名设置(可选)
core dump 文件默认会生成在当前文件夹(用户执行可执行文件的路径),名字就叫做core,core dump 文件的命名规则定义在/proc/sys/kernel/core_pattern文件中,如下图所示
可以通过修改/proc/sys/kernel/core_pattern的值来修改生成core dump文件的名字
如:执行