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
相关推荐
在路上看风景3 小时前
19. 成员初始化列表和初始化对象
c++
zmzb01033 小时前
C++课后习题训练记录Day98
开发语言·c++
未来侦察班3 小时前
一晃13年过去了,苹果的Airdrop依然很坚挺。
macos·ios·苹果vision pro
念风零壹3 小时前
C++ 内存避坑指南:如何用移动语义和智能指针解决“深拷贝”与“内存泄漏”
c++
孞㐑¥4 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
MZ_ZXD0016 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
A星空1237 小时前
一、Linux嵌入式的I2C驱动开发
linux·c++·驱动开发·i2c
零售ERP菜鸟7 小时前
范式革命:从“信息化”到“数字化”的本质跃迁
大数据·人工智能·职场和发展·创业创新·学习方法·业界资讯
凡人叶枫7 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
会叫的恐龙7 小时前
C++ 核心知识点汇总(第六日)(字符串)
c++·算法·字符串