如何在 OS X 上启用完整的核心转储?
Posted
技术标签:
【中文标题】如何在 OS X 上启用完整的核心转储?【英文标题】:How to enable full coredumps on OS X? 【发布时间】:2010-02-05 12:47:18 【问题描述】:看起来 OS X (10.6) 默认不生成编码转储。
使用ulimit -c unlimited
不是一个好的解决方案,因为 ulimit 确实在环境变量中设置了限制。这仅适用于从执行 ulimit 的 shell 执行的控制台应用程序。如果你有一个 gui 应用程序,这将不起作用。
【问题讨论】:
【参考方案1】:您可以启用核心转储,然后使用 open 从命令行启动您的 GUI 应用程序。
$ ulimit -c unlimited
$ open /Applications/Address\ Book.app
我刚刚查看了TN2124,它提出了类似的方法,只是不使用 open 而是直接启动应用程序,例如
$ ulimit -c unlimited
$ /Applications/TextEdit.app/Contents/MacOS/TextEdit
【讨论】:
这并不总是有效,请检查***.com/questions/135688/… 该讨论似乎是关于继承环境变量的。试试上面的 TN2124 技术,看看它是否适合你。以上是关于如何在 OS X 上启用完整的核心转储?的主要内容,如果未能解决你的问题,请参考以下文章
OS X 上是不是有 coredump_filter 用于核心转储
如何在 montavista linux 上为守护进程启用核心转储?