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
相关推荐
t***5441 天前
如何在现代C++中更有效地应用这些模式
java·开发语言·c++
itman3011 天前
C语言、C++与C#深度研究:从底层到现代开发演进全解析
c语言·c++·c·内存管理·编译模型
Hical_W1 天前
为 C++ Web 框架设计三层 PMR 内存池:从原理到实战
c++·github
BestOrNothing_20151 天前
C++零基础到工程实战(3.6):逻辑实战示例—日志模块
c++·命令行参数·main函数·switch case·逻辑判断·if else·enum class
t***5441 天前
有哪些常见的架构设计模式在现代C++中应用
开发语言·c++
张子都1 天前
【新版系统架构设计师】备考
职场和发展·系统架构·软件工程
米粒11 天前
力扣算法刷题 Day 42(股票问题总结)
算法·leetcode·职场和发展
zopple1 天前
汇编、C、C++和Java核心技术对比
c语言·汇编·c++
汉克老师1 天前
GESP2024年3月认证C++三级( 第三部分编程题(1、字母求和)
c++·string·gesp三级·gesp3级·大小写判断