Posts Tagged ‘iPhone toolchain Leopard 开发环境’
在Leopard中编译搭建非官方iPhone toolchain开发环境
准备工作
请确认操作系统为Leopard 10.5.2。
请确认XCode已经安装。最好安装最新的官方XCode 3.1 Beta。
手中最好是有iPhone或者iPod Touch, 已经jailbreak。
获取toolchain源码
打开一个terminal窗口,随便建立一个目录
cd iphoneenv
后面的操作都在这个目录中进行,只需复制下文文字框中的内容,贴到terminal窗口执行即可。
获取源码
获取iphone-dev SVN代码库
建立一个保存toolchain的目录。
编译odcctools
获取iPhone中的框架和头文件
获取这个iPhone的镜像有很多办法,这里介绍几种:
最省事的办法(如果手头没有iPhone或是没有wi-fi):
在google搜索iphone_image,找到了就直接下载,解压缩。
麻烦点的办法(手头有jailbreak并安装了installer的iPhone或者iPod Touch):
如果你家里或者单位有wi-fi,而且iPhone已经连上w-ifi,直接在iPhone的Installer里找到BSD Subsystem和OpenSSH并安装,然后用scp把iPhone里面从根目录开始的所有子目录的所有的文件拷贝出来。
或者在installer里安装AFPd,然后用Finder打开afp://你的iphone的ip地址,用户名用root, 密码用alpine,把里面的所有文件直接拽出来。
复制镜像
假设你把这个镜像里的所有文件都放在/iphone_image目录,那么执行下面操作(不要离开terminal的当前目录):
安装csu
configure和make LLVM-GCC
2.sed ’s/^FLAGS_FOR_TARGET=$/FLAGS_FOR_TARGET=${FLAGS_FOR_TARGET-}/g’ llvm-gcc-4.0-iphone/configure.old > llvm-gcc-4.0-iphone/configure
3.sudo ln -s /usr/local/arm-apple-darwin/lib/crt1.o /usr/local/arm-apple-darwin/lib/crt1.10.5.o
4.sudo ln -s /usr/local/arm-apple-darwin/lib/dylib1.o /usr/local/arm-apple-darwin/lib/dylib1.10.5.o
5.mkdir -p build/llvm-gcc-4.0-iphone
6 pushd build/llvm-gcc-4.0-iphone
7.export FLAGS_FOR_TARGET="-mmacosx-version-min=10.1"
8.sudo sh ../../llvm-gcc-4.0-iphone/configure –enable-llvm=`llvm-config –obj-root` \
–enable-languages=c,c++,objc,obj-c++ –target=arm-apple-darwin –enable-sjlj-exceptions \
–with-heavenly=$HEAVENLY –with-as=/usr/local/bin/arm-apple-darwin-as \
–with-ld=/usr/local/bin/arm-apple-darwin-ld
9.make LLVM_VERSION_INFO=2.0-svn-iphone-dev-0.3-svn
10.sudo make install
13.popd
14.popd
这样,专门用来编译iPhone的toolchain gcc就编译完了,文件位置在: