最近在研究iOS的逆向,学到了动态调试LLDB这块,之前在开发的时候只是进行正常的打断点和打印参数,没有去具体的了解整个调试流程。这次做个相关知识的学习并进行个总结。
什么是LLDB?
LLDB是Low Level Debugger的简称,在iOS开发的调试中LLDB是经常使用的,LLDB是Xcode内置的动态调试工具。
LLVM 是一个模块化和可重用的编译器和工具链技术的集合,创始人是 Chris Lattner,也是Swift之父
LLDB 是 LLVM 的子项目,基于LLVM提供的库和Clang构建的优秀的本地调试器。
什么叫动态调试?
/Library/Desktop/Xcode.app/Contents/Developer
将程序运行起来,通过下断点、打印等方式,查看参数、返回值、函数调用流程等。

Xcode动态调试:
-
关于GCC、LLVM、GDB、LLDB
Xcode的编译器发展历程:GCC → LLVM
Xcode的调试器发展历程:GDB → LLDB
-
debugserver⼀开始存放在Mac的Xcode⾥面
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/De
viceSupport/9.1/DeveloperDiskIm

本文介绍了iOS开发中动态调试的重要工具LLDB,它是Xcode内置的调试器,基于LLVM项目。文章详细阐述了动态调试的概念,并探讨了Xcode的调试历史,从GCC到LLVM,GDB到LLDB的转变。此外,还列举并解释了一系列常用的LLDB命令,包括设置断点、查看堆栈信息、执行表达式等,帮助开发者更好地理解和运用LLDB进行iOS应用的调试工作。
最低0.47元/天 解锁文章
2848

被折叠的 条评论
为什么被折叠?



