中文EN
0012345678900123456789001234567890012345678900123456789

2026 — Adam. 保留所有权利。

    返回文章列表
    开源
    效率
    系统

    PS5 文件想在 Linux 跑起来?这个 4.2 万 Star 的开源项目替你搬过来

    Adam
    2026年4月1日星期三
    1 分钟读完

    选择标题(3 选 1)

    PS5 文件想在 Linux 跑起来?这个 4.2 万 Star 的开源项目替你搬过来

    AnyPS5 用零模拟层把 PS5 可执行文件转成原生 Linux/Windows 格式

    4 万 Star 的开源工具:跳过模拟器,直接把 PS5 可执行文件搬到 PC

    4.2 万 Star 的开源工具:把 PS5 可执行文件自动搬到 Linux 与 Windows

    一、你还在为这件事头疼吗?

    手头有一份 PS5 平台的可执行文件,想在 Linux 服务器或 Windows 桌面上跑起来做研究、跑测试、做移植评估,却发现:没有 PS5 模拟器、没有官方 SDK、没有 PS5 硬件。三座大山直接把人挡在门外。对开发者而言,"跨平台"四个字在游戏主机领域几乎等于天方夜谭,更别提要做《血源诅咒》《漫威蜘蛛侠 2》这类 PS5 独占作品的兼容性研究——只能看着 .prx 文件干瞪眼。PS5 SDK 闭源、x86_64 指令特殊、系统调用完全私有,市面上的开源方案长期停留在 PS3、PS4 阶段,PS5 几乎是空白地带。

    二、项目简介:一句话看懂 AnyPS5

    AnyPS5 是一个 PS5 可执行文件自动移植工具,定位是「把 PS5 平台的可执行文件转成 Linux/Windows 原生格式」,核心特性四个关键词:自动转换、无模拟层、SPIR-V 着色器重编译、GPLv2 开源。截至目前已突破 42K Stars,是该领域罕见的活跃开源项目。主语言 C++,配套 Web 在线转换器与一整套文档体系(架构、构建、风格规约、贡献指南)。

    三、核心功能深度解析

    1. 自动 Relinker:把可执行文件改写成目标平台原生格式

    项目自带的 relinker 能把 PS5 的 ELF 直接转成 Linux 或 Windows 原生的可执行文件,不是套一层壳,而是改写符号表、节区、入口点和动态链接指向,转完直接 ./binary 就能运行。无需修改原始二进制字节码,运行逻辑零损耗。

    2. system prx 库的原生重实现

    core/libs/prx 目录里有完整的系统库 reimpl,覆盖 libc、libkernel、图形、音频、文件系统等 PS5 私有 prx 接口。这些库通过动态链接接入,转换后的可执行文件仍能按 PS5 原有方式调用系统功能——但调用的是 Linux/Windows 上等价版本的实现。

    3. 着色器重编译器:从 PS5 字节码到 SPIR-V

    着色器是 PS5 的硬骨头。AnyPS5 自带的 shader 重编译器能直接读取 PS5 GPU 着色器字节码,输出标准 SPIR-V。开启 ANYPS5_ENABLE_SPIRV_TOOLS 后,会用 Spirv-Tools 做验证,确保输出结果可被 Vulkan 驱动直接消费。这一步打通后,PS5 的图形管线才有机会在 PC 上复现。

    4. SDL 输入映射与配置

    项目用 SDL 做输入抽象,自动适配手柄摇杆和扳机键,键盘鼠标则通过 anyps5-input.ini 文件自定义。对移植评估而言,这一层把「手柄按键重新对一遍」这种脏活直接省掉。

    四、技术亮点与性能数据

    AnyPS5 的几个架构选择值得一说。零模拟层:不跑中间进程、不做指令级仿真,把 PS5 系统调用直接映射到宿主系统同义接口,启动开销几乎可以忽略;C++ 实现 + 强类型错误处理:所有不支持和异常状态严格抛 std::runtime_error,what() 输出 stderr 后进程终止,不会留半成品进程;着色器经过 Spirv-Tools 验证:用工业级验证器兜底,避免下游驱动拿到非法 SPIR-V 后黑屏崩溃;Web 转换器走本地处理:https://boykopovar.github.io/AnyPS5/ 在线转换,文件全程不离开浏览器,规避隐私和版权风险。

    社区维护的 blocker map 持续追踪每款 PS5 游戏的移植阶段(哪一阶段卡住、哪些库缺、GPU 覆盖率多少),进展透明可查。

    五、适用场景与人群

    适合谁:做主机兼容性研究、游戏移植评估、安全分析的工程师与高校学生;做逆向工程的爱好者;想给现有工具链加 PS5 兼容性支持的开发团队。不太适合谁:把 PS5 游戏当普通模拟器玩的普通玩家;希望"一键通吃 PS5 全部游戏"的非技术用户(这只是移植工具,不是成熟模拟器)。具体场景包括:把 PS5 自研 demo 移植到 Linux 验证算法、把 PS5 工具链集成进 CI 做 ABI 兼容测试、做零运行时损耗的 PS5 系统调用映射研究。

    六、与类似项目的对比

    维度AnyPS5RPCS3(PS3 模拟器)fpPS4(PS4 模拟器)
    目标平台PS5PS3PS4
    运行方式可执行文件直接转原生格式完整指令解释执行完整指令解释执行
    模拟层无有有
    着色器输出标准 SPIR-VGLSLGLSL/Vulkan
    许可证GPLv2GPLv2GPLv2

    横向看,PS5 这个赛道 AnyPS5 是少数能跑通 relinker + 着色器重编译的开源实现,比拼的不是「谁兼容的游戏多」(项目 README 也坦言这是非游戏研究用途),而是「架构是否干净、文档是否齐全、社区是否活跃」。

    七、如何快速上手

    在线用:浏览器打开 https://boykopovar.github.io/AnyPS5/ ,拖入文件、选目标平台(Linux/Windows),点转换下载,文件不离开本地。本地编译:Clone 仓库后按 docs/dev/BUILD.md 操作,依赖 C++ 编译器与 SPIRV-Tools(按需开启)。配置文件:手柄自动识别,键鼠编辑仓库根目录下的 anyps5-input.ini。进阶路径:阅读 docs/dev/ARCHITECTURE.md 摸清 relinker、prx reimpl、shader 重编译三条主线,再到 discussions/categories/game-bring-up 看真实游戏的 bring-up 报告。

    八、总结与行动建议

    AnyPS5 把 PS5 可执行文件到 Linux/Windows 的自动移植做成了一条干净链路——relinker 改写格式、prx 重写系统调用、shader 编译到 SPIR-V,三层各司其职,零模拟层让它在性能和启动速度上具备工程优势。它的核心价值不是"破解 PS5",而是提供了一套研究 PS5 系统行为、做 ABI 兼容分析的工程级工具栈。建议:先在 Web 转换器上跑一个 demo 文件熟悉流程,再 clone 仓库跑通本地构建,最后挑一个你熟悉的 PS5 系统调用链深入读源码。

    • GitHub:https://github.com/boykopovar/AnyPS5
    • Web 转换器:https://boykopovar.github.io/AnyPS5/
    • Discord:https://discord.gg/BHFztBPUe

    一句话安利:这是少数能让你在 Linux 上"直接跑"PS5 可执行文件的工程级开源工具。

    #anyps5 #Anyps5 #boykopovar #命令行工具 #开发工具 #开源项目 #GitHub

    返回文章列表