malloc_error_break
是否可以在 Xcode 下设置自动(或永久)断点?(如果它在 Xcode 中而我错过了,请指出)。我希望它可以在 Xcode 下的任何地方工作——从 GDB 到 LLDB,再到新旧项目。我真的很希望它可以在设备上工作,但这可能会有些牵强(设备上的 malloc 保护似乎有些问题)。
我在想.lldbinit
可能会有所帮助,但 LLDB 有点扼杀了这个想法。看来 LLDB 不遵守.lldbinit
(根据breakpoint list
)(http://lldb.llvm.org/tutorial.html)中设置的断点。LLDB 也忽略了.lldbinit-Xcode
(感谢 Rob)中的断点。
.gdbinit
也可能有用,但我们可能会遇到无法在 .gdbinit 中设置挂起断点中讨论的错误。这是 Apple,他们的 QA 流程完全崩溃,所以我不希望它被修复。
总而言之,以下内容不适用于此 Mac(MacBook Pro,10.8)和 Xcode(4.5.2):
riemann: jwalton$ cat ~/.lldbinit
# http://lldb.llvm.org/tutorial.html
# Not honored by LLDB
breakpoint set --name malloc_error_break
# Shot in the dark since the previous is not honored
breakpoint set pending --name malloc_error_break
riemann: jwalton$ cat ~/.gdbinit
set breakpoint pending on
set breakpoint malloc_error_break
set breakpoint pending auto
编辑(2013/02/07):另见lldb 等效于 .gdbinit 和未来中断?.
杰夫