lldb调试IPHONE步骤

来源:互联网 发布:win7固态硬盘优化工具 编辑:程序博客网 时间:2024/06/05 22:50

参照了几篇文章终于成功了,记录一下

在WIN7下安装VM11虚拟机,安装10.10版本下的是IOS版,安装XCODE 6.1


入门篇之 iOSOpenDev环境搭建

入门篇之 TheOS环境搭建(一)

iOS越狱开发-开发环境搭建

一步一步用debugserver + lldb代替gdb进行动态调试

DEBUGSERVER不用瘦身了,直接可以拿来用。安装开发环境,我都是ROOT帐号运行的,不要用用户帐号,减少错误。

安装

iOSOpenDev

有问题,保存所有日志查看了FAIL字符,解决第一个错误就成功安装了。原来是XCODE目录安装的问题。

usb端口转发,用WIFI老是出现问题。
wget http://cgit.sukimashita.com/usbmuxd.git/snapshot/usbmuxd-1.0.8.tar.bz2
tar xjfv usbmuxd-1.0.8.tar.bz2
cd usbmuxd-1.0.8/python-client/

python tcprelay.py -t 1234:1234 端口转发


debugserver *:1234 -a "SpringBoard"
启动程序调试
debugserver -x backboard *:1234 /var/mobile/Applications/91F64610-4CE6-4E61-9642-978B0EE80942/xxx.app/xxxx

process connect connect://113.94.214.154:1234
process connect connect://192.168.137.238:1234


这样下断加载库是正确的
breakpoint set --shlib /Library/MobileSubstrate/DynamicLibraries/xxx.dylib -n xxLua_xxx_init

查找到基址

image list -o -f|grep xxxxxxx.dylib

基址+静态分析地址
br s -a '0x00ca1000+0x000944A' 

DUMP内存,有限制1024,所以要用--force标识
me r --force -o /tmp/mem.bin -b $r1 $r1+$r2

target.max-memory-read-size


值得注意的是,lldb命令里如果涉及到加法操作,必须要加上单引号,即
br s -a '0x01399+0xba000'


image list -o -f 查看 内存 slide

其它命令参照LLDB官方说明档http://lldb.llvm.org/lldb-gdb.html


0 0