21

在 Xcode 4.3 中,现在您可以启用使用 LLDB 作为 iOS 目标的调试器。

在此处输入图像描述

与使用良好的旧 GDB 相比,它有什么优势?GDB 仍然适用于 LLVM,我看不出在“日常”调试任务中有任何明显差异。

4

1 回答 1

10

最显着的优势是 LLDB 理解属性中的点语法:

po self.property


来自LLVM 项目博客的引述:

LLDB 支持 Mac 上的基本命令行调试场景,可编写脚本,并且对多线程调试有很好的支持。在调试大型程序时,LLDB 已经比 GDB 快得多,并且有望提供更好的用户体验(尤其是对于 C++ 程序员)。我们很高兴看到更广泛的 LLVM 社区感兴趣的新平台、新功能和增强功能。

来自LLDB 主页的另一句话:

LLDB 是下一代高性能调试器。它是作为一组可重用的组件构建的,这些组件高度利用了较大的 LLVM 项目中的现有库,例如 Clang 表达式解析器和 LLVM 反汇编器。

为什么要使用新的调试器
为了实现我们的目标,我们决定从支持现代多线程程序的新架构开始,以有效的方式处理调试符号,使用基于编译器的代码知识,并为功能和扩展提供插件支持. 此外,我们希望调试器功能可用于其他分析工具,无论是脚本还是编译程序,而不需要它们是 GPL。

于 2012-02-21T11:02:02.103 回答