core文件生成及使用gdb调试

本文详细介绍了在Linux环境下如何生成core文件,包括通过修改系统设置、使用setrlimit函数以及通过gdb来实现。此外,还讲解了core文件路径的设置方法,并通过实例演示了如何使用gdb进行调试,包括查看堆栈信息、定位错误位置和打印变量值等步骤。
摘要由CSDN通过智能技术生成

1.生成core文件的设置

首先,linux下默认不生成core文件。
使用使用ulimit -c命令可查看core文件的生成开关,如果为0则表示关闭此功能。
使用ulimit -c filesize命令,可以限制core文件的大小(filesize的单位为kbyte)。
使用ulimit -c unlimited,则表示core文件的大小不受限制。
有以下三种方法可以生成core文件:
       1.永久生成core问件。将ulimit -c unlimited写进系统配置里,即在/etc/profile里面加上上述命令,这样重启后生效了。或者使用source命令使之马上生效。source /etc/profile
       2.只在当前终端里打开。cd到程序目录,输入ulimit -c unlimited,然后进行编译,也可以生成生成core文件。
       3.在程序里使用setrlimit函数设置生成core文件。包含#include<sys/resource.h>,然后在程序里加上如下代码也可以生成core文件。

struct rlimit limit;
limit.rlim_cur = RLIM_INFINITY;
limit.rlim_max = RLIM_INFINITY;
if<
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值