使用LLDB+debugserver调试程序 via USB

最近因为越狱开发,需要用LLDB+debugserver调试iOS上的系统程序,可惜没有Wi-Fi环境,但想到之前写过一篇SSH over USB的blog,于是考虑到通过USB来实现这个需求也是没问题的。

LLDB+debugserver如何配置就略过了,Google一下应该会有不少。直接进入主题吧。

参考SSH over USB的步骤,下载到usbmuxd,然后执行:

tcprelay.py -t 22:10022 tcprelay.py -t 1234:11234;

这一步通过tcprelay映射了22和1234这两个iOS设备上的端口,它们分别对应到Mac的1022和11234上。前一个便是对SSH端口的映射,后一个则是待会会用到的debugserver的端口。

如果一切正常,你将在Terminal里看到如下回显:

Forwarding local port 10022 to remote port 22
Forwarding local port 11234 to remote port 1234

然后让我们SSH到设备上

ssh [email protected] 10022

成功SSH到设备后,

$ debugserver *:1234 -a "SpringBoard"

这里debugserver打开的端口和之前用tcprelay映射的第二个相同就行。

随后在Mac端运行LLDB就可以通过USB来连接到设备调试了。

lldb 
(lldb) platform select remote-ios
(lldb) process connect connect://127.0.0.1:11234

等待LLDB连接上就可以愉快的玩耍了。

Leave a Reply

Your email address will not be published. Required fields are marked *

one × five =