搭建Theos环境
TODO:
- 【已解决】XCode编译iOSOpenDev的Logo Tweak项目报错: Command PhaseScriptExecution failed with a nonzero exit code Failed to locate Logos Processor
前提
Mac
Homebrew
XCode
- XCode是必须的,因为
Command Line Tools
是不够用的。而Xcode
包含了所有Apple平台的所有工具(链)
- XCode是必须的,因为
- 必要的工具
ldid
xz
brew install ldid xz
设置theos的环境变量
先确认自己的shell是啥:
➜ iOS_Tweak echo $SHELL
/bin/zsh
此处是:zsh
,所以去编辑zsh
的启动脚本:
vi ~/.zshrc
加上:
export THEOS=/opt/theos
export PATH=$THEOS/bin:$PATH
说明:
- 安装位置的选择
- 为了后续兼容其他相关开发工具,比如iOSOpenDev
- 最好安装到默认的=大家常用的位置
/opt/theos
- 最好不要放在其他位置
- 比如我之前就放在自己的某个目录
/Users/crifan/dev/DevSrc/iOS_Tweak/theos
- 否则容易导致各种错误
- 比如我之前就放在自己的某个目录
- 如果后续需要,可以把IP的环境变量也加上
export THEOS_DEVICE_IP=192.168.31.43
- 注:其中的
192.168.31.43
是你的调试的目标设备iPhone的WiFi的IP地址
- 注:其中的
下载theos代码
cd /opt/theos
git clone --recursive https://github.com/theos/theos.git $THEOS
常见问题
xcrun error invalid active developer path
macOS升级后
git clone
出错:xcrun: error: invalid active developer path
解决办法:
xcode-select --install
会弹框,点击安装,开始安装xcode-select
。等安装完毕,即可。
下载私有框架=下载sdk
注:XCode 7.3
之后,就不再提供,后续开发tweak时(可能)需要链接使用的私有框架private Framework了
所以要单独下载:
curl -LO https://github.com/theos/sdks/archive/master.zip
TMP=$(mktemp -d)
unzip master.zip -d $TMP
mv $TMP/sdks-master/*.sdk $THEOS/sdks
rm -r master.zip $TMP
编译运行调试
最后是,编译运行调试:
make do
注:
- 最新的
make do
== 之前的:make package install
说明:
- 新版theos已内置
CydiaSubstrate
(CydiaSubstrate.framework
),无需运行bootstrap.sh
或从iPhone
中拷贝了 - 新版theos也无需:
dpkg-deb
、brew install dpkg
了