5.macOS 安装 Theos 完整教程

第五节 macOS 安装 Theos 完整教程

学习目标

学完本节,希望你能够:

  1. 在 macOS 上从零完成 Theos 安装:Command Line Tools、克隆、环境变量、ldid、验证。
  2. 根据本机是 Intel 还是 Apple Silicon 选对 ldid 版本,并放到 $THEOS/bin
  3. nic.pl 创建第一个项目,并用 makemake package 跑通一次。
  4. 遇到「bad CPU type」、环境变量不生效、Xcode 警告时,能按本节步骤排查。

阅读提示:本节是「一条龙」实操,跟着做一遍即可;和第四节(Xcode 15 兼容)搭配看更完整。

常见疑问 :zsh 和 bash 配置文件不一样吗?------zsh 用 ~/.zprofile~/.zshrc,bash 用 ~/.bash_profile,改对文件再 source 一次。


一、前置要准备啥?

用一句话说清楚

说白了就是:macOS 系统 + Xcode(或至少 Command Line Tools)+ Git。建议 Xcode 和 Command Line Tools 用较新版本,省得后面报 SDK 或架构问题。


二、安装步骤(一般怎么干)

装 Xcode Command Line Tools

没装 Xcode 的话,至少装命令行工具,否则 git、clang 都没有:

bash 复制代码
xcode-select --install

克隆 Theos 仓库

bash 复制代码
mkdir -p ~/theos
git clone --recursive https://github.com/theos/theos.git ~/theos

记一句:一定要带 --recursive,子模块(如 Logos 预处理器)才会一起下来。

配置环境变量

把 Theos 和它的 bin 放进 PATH,方便以后直接用 nic.plldid 等。

zsh (推荐):写入 ~/.zprofile~/.zshrc

bash 复制代码
export THEOS=~/theos
export PATH=$THEOS/bin:$PATH

bash :写入 ~/.bash_profile

然后执行一次:

bash 复制代码
source ~/.zprofile   # 或 source ~/.zshrc / source ~/.bash_profile

安装 ldid(签名工具)

Theos 打包出来的二进制要给越狱设备用,一般用 ldid 签名。按你 CPU 选一个:

Intel (x86_64):

bash 复制代码
curl -LO https://github.com/ProcursusTeam/ldid/releases/download/v2.1.5-procursus7/ldid_macosx_x86_64
chmod +x ldid_macosx_x86_64
mkdir -p $THEOS/bin
mv ldid_macosx_x86_64 $THEOS/bin/ldid

Apple Silicon (arm64):

bash 复制代码
curl -LO https://github.com/ProcursusTeam/ldid/releases/download/v2.1.5-procursus7/ldid_macosx_arm64
chmod +x ldid_macosx_arm64
mkdir -p $THEOS/bin
mv ldid_macosx_arm64 $THEOS/bin/ldid

注意:下错架构会报 "bad CPU type in executable",换另一个版本即可。

验证安装

bash 复制代码
echo $THEOS              # 应输出你放 theos 的路径
$THEOS/bin/ldid -h       # 应打出 ldid 帮助
$THEOS/bin/nic.pl        # 应出现模板选择

三条都正常,说明环境就绪。


三、创建第一个项目

用模板建项目

bash 复制代码
$THEOS/bin/nic.pl
# 选模板(例如 13. iphone/tweak 或你看到的 tweak_modern)
# 按提示填项目名、包名、作者等

接下来干啥?

  1. 编辑 Tweak.x(或对应源文件)写 Hook 逻辑。
  2. make 编译。
  3. make package 打包成 deb。
  4. 若有越狱设备并配好 SSH:make install 装到设备。

这样你就完成从安装到第一个项目的一条龙了。


四、常见问题怎么排?

"bad CPU type in executable"

说明当前下的 ldid 架构和本机 CPU 不一致 。Intel 用 x86_64,Apple Silicon 用 arm64,重新下对版本、覆盖 $THEOS/bin/ldid 即可。

Xcode / Command Line Tools 过旧或报错

建议更新 Xcode 到最新;若只用 Command Line Tools,可重装一遍:

bash 复制代码
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install

环境变量不生效

  • 确认改的是当前用的 shell 的配置文件(zsh → .zprofile/.zshrc,bash → .bash_profile)。
  • 改完后执行一次 source 对应文件,或新开一个终端窗口再试 echo $THEOSnic.pl

本节小结

你只要记住这几条就行:

  1. 前置:macOS + Xcode(或 Command Line Tools)+ Git。
  2. 安装流程:xcode-select --install → 克隆 Theos(--recursive)→ 配 THEOS 和 PATH → 装对架构的 ldid 到 $THEOS/bin → 验证
  3. 验证:echo $THEOSldid -hnic.pl 都正常即可。
  4. 第一个项目:nic.pl 建项目 → 编辑代码 → makemake package(→ make install)。

本节术语速查

术语 一句话解释
ldid 越狱环境常用签名工具,给 Mach-O 签 entitlements,Theos 默认用它替代 codesign。
nic.pl Theos 的项目模板生成脚本,选模板、填信息生成项目目录和 Makefile。
deb Debian 包格式,make package 生成的就是 deb,可装到越狱设备。

本节思考与练习

  1. 概念 :用一句话说明「为什么克隆 Theos 时要加 --recursive」。
  2. 应用:若你在 M1/M2 Mac 上装了 x86_64 的 ldid,会有什么现象?该怎么改?
  3. 动手 :按本节从零做一遍安装,并用 nic.pl 创建一个 tweak,执行 make 看是否生成 dylib。
  4. 综合:把「前置条件 → 安装 → 验证 → 第一个项目」写成 4 步口诀,方便自己以后重装或教别人。

下一节预告:到本节为止,环境搭建这条线就告一段落;后面章节会进入具体逆向分析、Hook 实战等,会用到你在本节装好的 Theos 和开发工具。

相关推荐
长沙火山5 小时前
2.开发工具
逆向·ios逆向
长沙火山2 天前
第二十节_Android_加固原理
逆向·安卓逆向
长沙火山3 天前
第十六节_分析_WebSocket_API_请求
逆向·安卓逆向
长沙火山3 天前
第十三节_绕过_SSL_Pinning
逆向·安卓逆向
长沙火山3 天前
第十四节_Android_代码混淆与解混淆
逆向·安卓逆向
长沙火山4 天前
第二节_如何反编译_APK
逆向·安卓逆向
长沙火山4 天前
第七节_动态调试入门
逆向·安卓逆向
长沙火山4 天前
第十九节_Android_APP_安全机制
逆向·安卓逆向
长沙火山5 天前
第十七节_ELF_文件解析
逆向·安卓逆向