IOS逆向【3】-helloworld
2016-03-12 13:29
585 查看
第三集内容:写一个命令行的helloworld
代码来自IOS冰与火之歌,下载下来之后,编译到成功运行的过程是这次的重点。
要使用make进行编译,Makefile怎么写?
找到一篇微博,经过修改(还好懂一点llvm)到下面这个Makefile。
直接make就ok了。我使用的是iPhone4s,CPU型号是armv7,如果其他高版本的ipone机型,就要使用arm64的选项。
make成功后,在当前文件夹生成一个hello程序,使用scp命令上传到手机上,如果直接运行会出现
这时使用ldid签名,再运行程序就会运行成功。
代码来自IOS冰与火之歌,下载下来之后,编译到成功运行的过程是这次的重点。
要使用make进行编译,Makefile怎么写?
找到一篇微博,经过修改(还好懂一点llvm)到下面这个Makefile。
C=clang FRAMEWORKS:= -framework Foundation LIBRARIES:= -lobjc SDK:=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk SOURCE=hello.m Talker.m CFLAGS=-isysroot ${SDK} -Wall -Werror -arch armv7 -g $(SOURCE) LDFLAGS=$(LIBRARIES) $(FRAMEWORKS) OUT=-o hello all: $(CC) $(CFLAGS) $(LDFLAGS) $(OUT)
直接make就ok了。我使用的是iPhone4s,CPU型号是armv7,如果其他高版本的ipone机型,就要使用arm64的选项。
make成功后,在当前文件夹生成一个hello程序,使用scp命令上传到手机上,如果直接运行会出现
Administratormato-iPhone:~ root# ./hello Killed: 9
这时使用ldid签名,再运行程序就会运行成功。
Administratormato-iPhone:~ root# ldid -S hello Administratormato-iPhone:~ root# ./hello 2016-03-12 12:23:47.111 hello[2641:707] Hello, Ice and Fire! 2016-03-12 12:23:47.115 hello[2641:707] Hello, Ice and Fire!
相关文章推荐
- IOS8与IOS9不同点
- kidd风的IOS日志之Source Tree的使用教程
- iOS之Runtime
- iOS开发--正则表达式
- iOS中.PCH文件的配置及使用
- iOS注册远程推送消息证书后提示此证书签发者无效的解决办法
- iOS注册远程推送消息证书后提示此证书签发者无效的解决办法
- iOS注册远程推送消息证书后提示此证书签发者无效的解决办法
- iOS 开发--添加工程
- IOS开发随笔2
- iOS成员变量、成员属性和点语法
- iOS子视图捕获到的touches如何让父视图响应
- IOS上架流程
- IOS Xcode7.1新建纯代码工程
- CoreData简单实用
- IOS学习之设置NSZombieEnabled和MallocStackLogging解决EXC_BAD_ACCESS错误
- IOS开发随笔
- iOS开发学习笔记
- iOS plist 文件的读写
- iOS多线程