Mac 下生成core dump

mac下生成core dump
  1. 使用ulimit -c查看ulimit设置,显示unlimited表示开启,显示0表示关闭,通过ulimit -c unlimited打开设置;

    但是这个只在当前窗口有效果。如果需要变成系统全局设置。

    就需要去改/etc/profile文件,打开,然后加上ulimit -c unlimited就可以了,这样当产生Crash的时候就会自动产生dump文件。

  2. 之后需要配置一下dump产生的规则和路径:sudo sysctl kern.corefile=/cores/core.%N.%P,其中%N表示进程名字,%P表示进程id。Linux还有%S,%T分别表示最后一个信号和时间,在MAC上没找到对应的。(mac默认生成的core dump在/cores/下).

  3. 最后如何用lldb来查看一个core dump文件lldb -c core.xxx. 在lldb命令下输入bt查看报错代码.

生成太多core文件会占用电脑磁盘,可以关闭全局的core dump生成配置:

  1. 永久关闭,则在/etc/sysctl.conf中加入一行(如果存在,则将其值修改为0),重启后生效:kern.coredump=0
  2. 零时关闭,当前生效,重启后失效:sudo sysctl -w kern.coredump=0
相关推荐
zh路西法2 分钟前
【3D SLAM源码解读系列】(四) GTSAM与iSAM2——从回环约束到位姿图优化
c++·slam·gtsam·pgo·isam2
01二进制代码漫游日记18 分钟前
C++基础入门速通
java·开发语言·c++
tudousisi22231 分钟前
二维费用01背包
c++
2601_9561219734 分钟前
高精度问题
c++
橙橙笔记38 分钟前
C++的学习第三部分
开发语言·c++·学习
君君思密达44 分钟前
LeetCode Hot 100 题目详解-滑动窗口
算法·leetcode·职场和发展
码匠许师傅9 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
fqq310 小时前
力扣刷题前置Java语法
算法·leetcode·职场和发展
小小龙学IT11 小时前
DuckDB 深度实战:用 C++ 在进程内跑一个「分析型数据库」
数据库·c++
Thecozzy12 小时前
大厂 AI Coding 面试大招
人工智能·面试·职场和发展