ITADN
ptitSeb/box64
ptitSeb/box64 · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Official logo

Box64: 带有独特之处的 Linux 用户态 x86-64 模拟器

Website | Changelog | 中文 | Українська | Report an Error

Build Status Stars Forks Contributors Pull Requests Issues


请查看我们的游戏兼容性列表 https://box86.org/app/,请帮助我们 改进它


Box64 使 x86_64 Linux 程序(包括游戏)能够在非 x86_64 Linux 系统(如 Arm,需要 64 位小端主机系统)上运行。

Box64 利用原生系统库(libc、libm、SDL、OpenGL),提供易于集成的特性,并在许多应用中展现出令人惊讶的性能。有关性能基准测试,请参阅 此分析

借助针对 Arm、RISC-V 和 LoongArch 平台的 DynaRec,Box64 实现了比仅使用解释器快 5-10 倍的速度提升。如需深入了解 DynaRec,请参阅 内部工作原理。如需更详细地了解 Box64 内部机制和优化策略,请参阅我们的 EuroSys 2026 论文 Practical and Efficient x86-64 Emulation on RISC-V,该论文专注于 RISC-V,但涵盖了更广泛适用于 Box64 的许多技术。

Box64 Icon

Logo 和图标由 @grayduck 提供 - 感谢!


用法

  • $ box64 ./program [args] 用于运行 Linux x86_64 程序。
  • $ box64 -k 用于终止所有模拟进程。
  • $ box64-bash 用于获取一个 x86_64 bash 环境。
  • 想要使用 wine?请参阅 Wine 文档

Box64 还提供环境变量和 rcfile 来控制其行为。详情参见 使用文档


编译与安装


版本历史

请参阅 Changelog 以获取版本更新。


平台兼容性说明

Box64 需要主机系统上的 64 位库,因为它直接转换 x86_64 函数调用。对于 32 位二进制文件,请使用 Box86 或 Box32。

注意事项

  1. Box32 仍处于实验阶段。
  2. 某些 shell 脚本(例如 GOG 游戏安装程序)可能依赖 uname -m 来确定当前架构。请将其作为 box64 script.sh 运行,以便 Box64 接管。

请注意,DynaCache 现在默认启用(带压缩)。这会在 ~/.cache/box64 中创建文件,以保存已执行二进制文件和库的生成代码,从而在第二次运行时大幅缩短启动时间。这些文件经过压缩,默认情况下最多占用 2Gb。您可以通过创建(或修改)~/.box64rc 并在其中写入,将其切换为只读模式来禁用 DynaCache 写入

[*]
BOX64_DYNACACHE=2

(或 0 以完全禁用它)。有关如何配置 Box64 的更多详细信息,请参阅 使用文档


配置

Box64 的配置文件位于 /etc/box64.box64rc~/.box64rc,两者均格式化为 .ini 文件。如果您不想使用默认的 /etc/box64.box64rc 文件,请将其复制到 ~/.box64rc 以确保兼容性。

设置优先级:~/.box64rc > /etc/box64.box64rc > 命令行。

有关更多信息,请查阅 使用文档


其他平台特定说明

Unity 游戏模拟

  • 许多 Unity 游戏需要 OpenGL 3+,这在 ARM/RISC-V SBC 上可能具有挑战性。
  • Pi4 和 Pi5 用户提示:使用 BOX64_DYNAREC_STRONGMEM=1 设置 MESA_GL_VERSION_OVERRIDE=3.2 以防止冻结并启用强内存模式。
  • 使用 Panfrost:为了在 ARM 上获得更好的兼容性,启用 PAN_MESA_DEBUG=gl3 以强制使用更高的 OpenGL 配置文件。如果游戏启动但在显示任何内容之前意外退出,这可能会有所帮助。

Steam

参见 Steam 文档

Wine

Box64 支持 Wine64 和 Proton。对于 32 位组件,需要 Box86。同时拥有 Box64 和 Box86 的系统可以运行 32 位和 64 位 Windows 程序。

注意:您可以使用 Wine WOW64 构建版本在仅 Box64 的环境中运行 x86 Windows 程序,这仍然是实验性的,但在大多数情况下有效。

有关更多信息,请查看 Wine 文档


最后的话

我想感谢所有为 box64 开发做出贡献的人。 贡献的方式有很多种:代码贡献、资金、硬件和广告! 因此,不分先后,我想感谢:

我也感谢许多其他曾参与过此项目的人。

(如果您在您的项目中使用 Box64,请别忘了提及它!)