在Xcode 4.3中,现在您可以启用使用LLDB作为iOS目标的调试器。
与使用老旧的GDB相比,它有哪些优势? GDB仍然可以与LLVM配合使用,我在“日常”调试任务中看不到任何明显差异。
最显著的优点是LLDB能够理解属性中的点语法:
po self.property
引用自LLVM项目博客:
LLDB在Mac上支持基本的命令行调试场景,可编写脚本,并具有出色的多线程调试支持。相较于GDB,当调试大型程序时,LLDB已经快得多,并承诺提供更好的用户体验(特别是对于C ++程序员)。我们很兴奋地看到更广泛的LLVM社区对新平台、新功能和增强功能的兴趣。
另一则引文来自LLDB主页:
LLDB是下一代高性能调试器。它作为一组可重复使用的组件构建,高度利用了更大的LLVM项目中现有库,如Clang表达式解析器和LLVM反汇编器。
为什么需要新的调试器
为了实现我们的目标,我们决定采用全新的架构,支持现代多线程程序,以有效的方式处理调试符号,使用基于编译器的代码知识,并具有插件支持功能和扩展。此外,我们希望调试器功能可用于其他分析工具,无论是脚本还是编译程序,都不需要它们遵循GPL。