跳转到内容

构建文档概览

本节面向需要自行构建 Bob-Ddong-Iri-Hoyo 启动器应用、Wine 运行时、DXMT 运行时,或需要了解发布产物结构的维护者。 如果只是安装启动器并运行游戏,则不需要按照本节自行构建这些组件。

BDIH-Launcher

用于构建和打包基于 Electron、React、TypeScript 的 macOS 启动器应用。

wine-build

用于构建和打包基于 WineHQ 11.0、WineHQ 11.11、CrossOver 26.1.0 的 Wine 运行时。

dxmt-er-build

用于构建带有 Eternal Return(永恒轮回)专用图形修正的 DXMT v0.80 运行时。

  1. 先阅读 构建文档概览,了解整体结构和规则。
  2. 再阅读 BDIH Launcher 构建,了解启动器应用的本地构建、打包、测试和发布策略。
  3. 再阅读 Wine 运行时构建,了解 WineHQ 与 CrossOver 系列运行时的构建方式。
  4. 再阅读 DXMT 构建,了解 Eternal Return 专用 DXMT 补丁和打包流程。
  5. 最后阅读 发布与元数据,了解启动器 manifest、artifact 结构和许可证检查。

各仓库中的构建命令和补丁应用顺序是事实来源。 如果文档和脚本看起来不一致,请优先确认脚本。

源码变更应保存在可追踪的 patch set 和脚本中。 artifacts/ 下的临时结果、实验日志和本地构建产物不是发布基准。

DXMT 默认作为外部运行时管理,而不是直接打进 Wine 包。 这样启动器可以在不重新构建 Wine 的情况下替换或回滚 DXMT。

发布构建中不应留下临时诊断计数器、追踪代码或本地实验补丁。 用于测量的 debug build 和面向用户发布的 release build 应分开处理。

组件基准
启动器应用Electron 41、React 19、TypeScript 6、Webpack 5
当前 WineHQ 系列wine-winehq-11.11
WineHQ 对比/兼容系列wine-winehq-11
CrossOver 系列wine-crossover-26.1.0
DXMTv0.80
Eternal Return DXMT 补丁仅 sanitizeOutput

WineHQ 11.11 是当前 WineHQ 系列的基准构建。 WineHQ 11.0 作为对比和兼容 fallback 系列维护。 CrossOver 26.1.0 是独立运行时系列,主要用于 Eternal Return 验证。

请先检查以下项目:

  • 确认命令是在目标仓库根目录执行的。
  • 确认 Wine 版本、DXMT tag、patch set、toolchain 版本与文档基准一致。
  • 确认运行 clean.sh 后,相同 patch set 可以干净地重新应用。
  • 确认旧 prefix 或残留 DLL 没有和新运行时混用。

兼容层项目对依赖版本和本地 prefix 状态非常敏感。 即使构建成功,细小的版本差异或残留的 prefix-local DLL 也可能导致运行时问题。