1.Install theos. (follow iphonedevwiki )
基本的にiphonedevwikiに沿う。
gitの方で説明する。
<update 1>
ashikaseさんがこのあたりの事を行うスクリプトを書いているので、それを使うと更に楽。
wget -q http://iphone-backgrounder.googlecode.com/svn/trunk/get_requirements.shとか。
curl -s http://iphone-backgrounder.googlecode.com/svn/trunk/get_requirements.shとかでDLして実行。
. ./get_requirements.sh
これで、wget/curlの確認、git/svnの確認、theosのDL、MobileSubstrate headerのDL、Activator libのDL、ldidのDL、dpkg-debの確認まで行ってくれる。
</UPDATE 1>
install git-osx-installer
iphonedevwikiにあるInstalling theosをこなす。
export THEOS=/opt/theos git clone git://github.com/DHowett/theos.git $THEOS curl -s http://dl.dropbox.com/u/3157793/ldid $THEOS/bin/ldid; chmod +x $THEOS/bin/ldid
theos自体のinstallはこれで終わり。
2.Install Header file.
class-dumpしたヘッダーファイルを入れるのだが、面倒だったのでここもgitで。
( ここはもうちょいスマートなやり方があるはず )
git clone git://github.com/rpetrich/iphoneheaders.git $THEOS/include_rpetrich
mv $THEOS/include_rpetrich/* $THEOS/include/
The headers for IOSurface is not free or open source, so they are not placed here.
Nevertheless, you can make a copy from Mac OS X:
とのことなので、Macからコピーする。
cp /System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceAPI.h $THEOS/include/IOSurface/
3.Modify theos makefile.
theosディレクトリのmakefileを修正する。
/opt/theos/makefiles/targets/Darwin/iphone.mk
10行目:SDKVERSION ?= を適切なものに変更。
ちなみにprojectの作り方は/opt/theos/bin/nic.plを実行すればいい。
MobileSubstrateのdylib作るときは5 tweak。
SBSettings toggleの時は3 libraryとかだ。
4.Make
makeでxmファイルからmmファイルを生成してくれ、make packageでdylib,control,plist等を適切な位置へ配置、パッケージ化してくれる。この際、controlファイルのversionに変化がなければ、自動で-1,-2,-3とインクリメントしてくれる。
5.layout
project dir直下に'layout' dirを作り、ファイルを配置しておくとmake packageの際に取り込んでくれる。
6.make install
make
make package
ときて、最後は実機へのインストールmake install
環境変数にTHEOS_DEVICE_IPを設定しておけばscp転送、dpkg -i、respringまで行ってくれる(その度にパスワードを聞かれる)。
export THEOS_DEVICE_IP=192.168.xx.xx