8fda548410017329e1d88aabef731530
LLDB - 进入调试

0x0 前言

纸上得来总觉浅,绝知此事要躬行。

对于程序员来说,没有比可调试来的更安心, 只看代码你可能并不能完全理解其中的意思,因此本文主要也是一个授之于渔的方法。本文主要介绍如何用 Xcode调试 “一个正在调试iOS模拟器的lldb”。

0x1 进入调试 lldb的状态

这一步比较简单,有过主动attach经验的同学应该知道。

首先在terminal.app中进入我们编译出来的 lldb的目录,然后执行 ./lldb 就进入了lldb的响应式交互界面:

然后就是在lldb源码工程的Xcode中 attach到这个进程:

0x2 打断点调试

我们就用上次讲到的 apropos 命令做例子,在命令的doExecute打下断点,然后在打开的命令行中输入 apropos, 即可看到进入断点:

这样我们就可以一步一步的跟踪每个命令的执行过程了,这样的学习方法可以帮助你深入了解其中的细节。

0x3 用自己编出来的lldb调试 ios模拟器

虽然我们已经进入了调试lldb状态,但是我们编译出来的这个lldb还没有attach到一个进程。尤其是对于iOS同学来说,更希望是看到lldb调试iOS程序时候的状态。

搜了下文档,文档上讲可以用如下命令联调iOS模拟器的app:
```

top Created with Sketch.