# Portal 2：面向 Apple silicon 的静态重编译

> 该项目把 Portal 2 的 Linux x86 模块静态重编译为适用于 macOS 和 iPhone 的 ARM64 应用。准备工具处理 ELF 模块布局与重定位，提升器将函数转换为 C，再与实现 libc、线程、SDL2、图形和 Steam 接口的运行时一起编译。作者报告 Mac 和 iPhone 版本可游玩。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-11-08
- 收录于：2026-11-09
- 原始资源：<https://github.com/kanapitsas/portal2-recomp>
- 一手来源：<https://github.com/kanapitsas/portal2-recomp/blob/270429142bd00e772d0c9eb69d553f9c591dfd8a/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/portal-2-apple-silicon-recomp-case/>
- 记录 JSON：<https://awesomerea.org/resources/portal-2-apple-silicon-recomp-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/portal-2-apple-silicon-recomp-case/index.md)

## 使用条件与局限

- **前提条件：**需要 Apple silicon Mac、Python 3.9 或更高版本、Homebrew、Xcode 命令行工具、SDL2、FreeType 和 Fontconfig。
- **前提条件：**需要自有的 Portal 2 游戏文件夹，以及 Steam depot 661 的 Linux 二进制文件。
- **前提条件：**iPhone 版本需要 Xcode、iOS 17 或更高版本、开发者模式及约 12 GB 设备空间。
- **局限：**当前构建针对 Linux depot 661 的 manifest 8940703274703023246；其他版本需要补充新的间接调用目标。
- **许可：**采用 GPL-3.0 许可证。

## 一手来源

1. <https://github.com/kanapitsas/portal2-recomp/blob/270429142bd00e772d0c9eb69d553f9c591dfd8a/README.md>

## 同分区更多条目：游戏

- [Power Dozer：静态重编译《Blast Corps》](https://awesomerea.org/zh/resources/power-dozer-case/index.md) · 案例
- [Prince of Persia 2：将 DOS 游戏静态重编译到 Windows](https://awesomerea.org/zh/resources/pop2-windows/index.md) · 案例
- [Project 8 Plus：《Tony Hawk's Project 8》原生静态重编译移植](https://awesomerea.org/zh/resources/project-8-plus-case/index.md) · 案例
- [Project Arwing (2)：由一致性反汇编重编译的 Star Fox 2](https://awesomerea.org/zh/resources/project-arwing-2-star-fox-2-recomp-case/index.md) · 案例
- [Project Arwing：由一致性反汇编重编译的 Star Fox](https://awesomerea.org/zh/resources/project-arwing-star-fox-recomp-case/index.md) · 案例
- [Project Gotham Racing 2：Xbox XBE 静态重编译](https://awesomerea.org/zh/resources/pgr2-recomp-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
