# 《时之笛》：16 个版本均以 MD5 校验 ROM 构建的反编译

> 借助游戏本身的信息以及静态与动态分析，为《时之笛》重建 C 源码库，可重新构建 Nintendo 64、GameCube 和 iQue Player 共 16 个 ROM 版本。素材取自使用者自备的 ROM，默认构建会以对应版本的 MD5 校验；README 说明项目不制作 PC 移植，并仍称仓库处于开发中。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-18
- 收录于：2026-10-18
- 原始资源：<https://github.com/zeldaret/oot>
- 一手来源：<https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/ocarina-of-time-decomp-case/>
- 记录 JSON：<https://awesomerea.org/resources/ocarina-of-time-decomp-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/ocarina-of-time-decomp-case/index.md)

## 使用条件与局限

- **前提条件：**每次构建都需要使用者自备所选版本的基础 ROM，且须与 README 列出的 MD5 一致；仓库不含游戏素材，素材在设置阶段从该 ROM 中提取。Ship of Harkinian 等原生移植及重编译项目都是独立项目，并非本仓库的产物。
- **前提条件：**README 说明在 Linux 或 WSL 上构建，另有 macOS 与 Docker 指南；需要 Git、build-essential、curl、带 pip 与 venv 的 Python 3.10+、libxml2 以及 MIPS binutils 工具链。N64 和 GameCube 代码通过 ido-static-recomp 使用 IDO 7.1 与 5.3 编译；iQue 版本还有部分文件使用 EGCS，可选的 GCC 构建不保证一致。
- **范围：**README 说明项目利用游戏内部信息及静态和／或动态分析，从零重建源码库，并明确表示不制作 PC 移植。项目可构建 N64、GameCube 和 iQue Player 共 16 个 ROM 版本（默认 gc-eu-mq-dbg）；ROM 的部分内容可能尚不能移位，因此修改起来可能较困难。
- **测试证据：**默认 COMPARE=1 时，make 会将构建出的 ROM 的 MD5 与该版本的校验文件比对，并输出 OK 或 FAILED；设置 NON_MATCHING=1 或 COMPILER=gcc 会关闭该检查。GitHub Actions 在存有基础 ROM 的私有容器中运行，报告固定提交的 16 个版本均构建成功；审阅时可变的进度徽章显示 100%。
- **许可：**固定版本的仓库中没有许可证文件，GitHub 也未识别出许可证，因此未声明复用许可；任天堂内容与编译器组件各有其条款。

## 一手来源

1. <https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/README.md>
2. <https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/Makefile>
3. <https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/docs/compilers.md>
4. <https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/docs/BUILDING_MACOS.md>
5. <https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/baseroms/ntsc-1.0/checksum-US.md5>
6. <https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/.github/workflows/ci.yml>
7. <https://github.com/zeldaret/oot/actions/runs/38614247271>
8. <https://zelda.deco.mp/games/oot>

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

- [Paper Mario：覆盖四个版本的一致性 Nintendo 64 反编译](https://awesomerea.org/zh/resources/paper-mario-matching-decomp-case/index.md) · 案例
- [《纸片马力欧 RPG》：早期阶段的 GameCube 一致性反编译](https://awesomerea.org/zh/resources/paper-mario-ttyd-decomp-case/index.md) · 案例
- [Perfect Dark：生成一致 ROM 的 Nintendo 64 反编译重建](https://awesomerea.org/zh/resources/perfect-dark-matching-decomp-case/index.md) · 案例
- [Petari：Super Mario Galaxy 一致性反编译重建](https://awesomerea.org/zh/resources/petari-smg-decomp-case/index.md) · 案例
- [《幻影沙漏》：早期阶段的 Nintendo DS 一致性反编译](https://awesomerea.org/zh/resources/phantom-hourglass-ds-decomp-case/index.md) · 案例
- [《皮克敏2》：覆盖五个版本、已完全匹配的 GameCube 反编译](https://awesomerea.org/zh/resources/pikmin-2-matching-decomp-case/index.md) · 案例

## 关于此条目

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