暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

linux 打开测试core

原创 是赐赐啊! 2023-04-07
706

在linux下调试C/C++程序时,有时候出现段错误,但是往往没有core dump文件。这是因为默认情况下是关闭的。为了方便调试,需要设置其打开。

设置过程共分为三步。

1. 打开core大小权限,改为不设限制

在当前命令行下设置则只对当前session有效,内容如下。要想永久有效,则需要使用root用户在/etc/profile尾部增加一行内容:

ulimit -c unlimited

2.设置core文件名称带进程id(PID),修改"/proc/sys/kernel/core_uses_pid"文件,可以将进程的id作为作为扩展名,文件内容为1表示使用扩展名,默认为0;使用进程id扩展名时,生成的core文件格式为"core.xxx",xxx为进程id。

echo '1' > /proc/sys/kernel/core_uses_pid

3.设置core文件存储路径和更详细的文件名称

echo "./core-%e-%p-%t"> /proc/sys/kernel/core_pattern

测试验证:

kill -s SIGSEGV $$

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论