zoukankan
html css js c++ java
debugserver + lldb代替gdb进行动态调试
一、定制lldb(将下述所需的文件全部放于同一个文件夹下【假设为abc】,便于操作)
1.
下载
一个能用的
ldid
(http://joedj.net/ldid)
做后面的签名之用
2.
获取原生
debugserver(建议直接从手机目录中拷贝出来,
/Developer/usr/bin/debugserver,当此手机在Xcode中标记为开发设备后便会出来这些目录
)
3.
瘦身debugserver
命令行
cd到abc文件下
输入
lipo -thin armv7s /abc/fat/debugserver(原路径) -output /abc/thin/debugserver(重新生成的新路径)
以上根据自己手机支持的armv7、armv7s、arm64提取,我这边以iphone5为例,是armv7
4.
签名瘦身之后的
debugserver
将下面的内容另存为一个名为ent.xml的文件
com.apple.springboard.debugapplications
get-task-allow
task_for_pid-allow
run-unsigned-code
命令行中输入:abc$ ldid -Sent.xml thin/debugserver
5.
将定制好的
debugserver
拷贝回iOS
,放在/usr/bin/
debugserver
下,然后在iOS的命令行运行:
chmod +x /usr/bin/debugserver
6.
假如是IOS7下还要另外再加签名:
http://www.iphonedevwiki.net/index.php/Debugging_on_iOS_7
http://www.iphonedevwiki.net/index.php/Debugserver (里面的2、3点)
http://lldb.llvm.org/lldb-gdb.html
参考:http://bbs.iosre.com/forum.php?mod=viewthread&tid=52&extra=page=1&filter=typeid&typeid=11&typeid=11
http://www.kanxue.com/bbs/showthread.php?t=190126
查看全文
相关阅读:
五种线程池的分类与作用
什么是死锁?
事务隔离级别区分,未提交读,提交读,可重复读
共享锁(读锁)和排他锁(写锁)
java中的成员变量和全局变量的区别
Algorithm
6
5
4
3
原文地址:https://www.cnblogs.com/cnsec/p/11515781.html
最新文章
1.Oracle的介绍与相关软件的安装
狂神说SpringMVC07:Ajax研究
B站---【狂神说Java】JavaWeb入门到实战---笔记
算法速成复习资料
120. 防线
119. 袭击
118. 分形
试题 算法训练 奇异的虫群 -> 矩阵快速幂
试题 算法训练 小生物的逃逸
试题 算法训练 数字游戏
热门文章
试题 算法训练 单词接龙
试题 算法训练 幂方分解
蓝桥杯 瓷砖铺放 递归
试题 算法训练 集合运算
蓝桥试题 算法训练 摆动序列
Cannot connect to the Docker daemon at tcp://localhost:2375. Is the docker daemon running?
来自守护进程的错误响应:Get https://harbor.od.com/v2/: dial tcp 10.4.7.200:443: connect: getsockopt:连接被拒绝
Centos8 报No suitable device found for this connection错误,无法启动网卡
十大经典排序算法总结
面向过程和面向对象的区别
Copyright © 2011-2022 走看看