shadPS4 源码编译完整指南:三平台四步从零跑起 PS4 模拟器
2026/9/3 14:47:41 网站建设 项目流程

shadPS4 源码编译完整指南:三平台四步从零跑起 PS4 模拟器

【免费下载链接】shadPS4PlayStation 4 emulator for Windows, Linux, macOS and FreeBSD written in C++项目地址: https://gitcode.com/GitHub_Trending/sh/shadPS4

shadPS4 是一个用 C++ 编写的开源 PlayStation 4 模拟器,支持 Windows、Linux 和 macOS,目前已经能跑动《血源诅咒》《如龙 0》这类 3A 作品。这篇文章带你在任意一个系统上把它从源码编译出来:装依赖、拿代码、编译、启动,四步走完就能开机。适合想体验 PS4 老游戏、或喜欢折腾 C++ 编译流程的读者,全程只需要终端和官方文档。

出发前,先核对这几项

开工之前把配置对一遍,能避开后面 80% 的坑:

  • 处理器:最低要求是支持 AVX2 的 64 位 CPU;多核高频核更稳,因为模拟器要逐条翻译游戏代码
  • 内存:8GB 可用是底线,16GB 或更高才舒服
  • 显卡:需要 Vulkan 1.1 及以上的驱动,这是硬门槛,集成显卡请先确认支持
  • 磁盘:预留 10GB 起步,源码加构建产物再加游戏文件,20GB 更从容
  • 系统版本:Windows 10 及以上;主流 Linux 发行版均可;macOS 需要 26.0 以上,且只支持 Apple Silicon(Intel Mac 不行)

编译器上,官方 CI 用的是 Clang,所以三个平台都优先选 Clang 而不是 GCC/MSVC,能减少「我这边编译报错」的概率。

装依赖、拿源码、编译、跑起来:一条路线四拍走

三条路线的骨架完全一样:先装依赖,再克隆仓库(带--recursive,否则子模块缺失编译必炸),然后 CMake 配置加编译,最后敲命令启动。仓库地址统一是:

git clone --recursive https://gitcode.com/GitHub_Trending/sh/shadPS4 cd shadPS4

Windows 从源码编译:用 Visual Studio 2022 加 Clang 组件

  1. 装依赖:安装 Visual Studio 2022 Community,勾选「使用 C++ 的桌面开发」,再在单个组件里搜到并勾选C++ Clang Compiler for WindowsMSBuild support for LLVM;顺手装好 Git for Windows。这一步成功后,终端里能正常执行 git 命令即可。
  2. 拿源码:执行上面那条 clone 命令,把代码拉到本地。
  3. 编译:打开 Visual Studio,选「打开本地文件夹」指向源码目录,把构建配置切到 Clang x64 Release,然后「生成 → 全部生成」。产物在Build/x64-Clang-Release/下的 shadps4.exe。
  4. 跑起来:双击 exe 或在终端里执行它,看到命令参数列表就是编译成功。

⚠️ 注意:MSYS2/MinGW 路线目前官方标注为不可用,别在上面浪费时间;ARM64 的 Windows 也暂不支持。

Linux 下配好依赖只要一条命令

  1. 装依赖(以 Ubuntu/Debian 为例,Fedora、Arch 见官方编译文档):

    sudo apt install build-essential clang git cmake libasound2-dev libpulse-dev libopenal-dev libssl-dev zlib1g-dev libedit-dev libudev-dev libevdev-dev libsdl2-dev libjack-dev libsndio-dev libvulkan-dev vulkan-validationlayers libpng-dev

    执行完clang --version能出版本号就说明工具链就位。

  2. 拿源码:同样是上面那条 clone 命令。

  3. 编译,两条命令搞定:

    cmake -S . -B build/ -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ cmake --build ./build --parallel$(nproc)

    第二条会占用全部 CPU 核心;如果机器卡死,把--parallel$(nproc)去掉重跑。

  4. 跑起来

    ./build/shadps4 /path/to/game/folder/eboot.bin

    游戏画面出现在屏幕上,即代表整条链路通了。

macOS 上编译 shadPS4:先备好 Xcode 和 Homebrew 工具链

  1. 装依赖:从 App Store 装 Xcode 16.0 或更新版本,装好 Homebrew 后执行:

    brew install clang-format cmake meson ninja pkg-config llvm spirv-tools spirv-llvm-translator libclc

    这一串是编译工具加上 macOS 自带 Vulkan 驱动(KosmicKrisp)的依赖;装完brew list cmake无报错即可。

  2. 拿源码:还是那条 clone 命令。

  3. 编译

    cmake -S . -B build/ -DCMAKE_OSX_ARCHITECTURES=x86_64 cmake --build build --parallel$(sysctl -n hw.ncpu)
  4. 跑起来:在 build 目录执行./shadps4 游戏路径/eboot.bin。细节可对照官方 macOS 编译文档。

首次开机:固件文件与输入设备接管

编译完成只是「能启动」,真正跑游戏前还差两件事。

固件模块(必须,且只能来自你自己的主机):模拟器要加载一批 PS4 系统模块,文件需要从你合法拥有的 PlayStation 4 主机里提取,然后全部放进 shadPS4 的sys_modules文件夹。常用的核心模块:

模块用途
libSceCesCs.sprx系统加密服务
libSceFont.sprx / libSceFontFt.sprx字体与 FreeType 渲染
libSceJson.sprx / libSceJson2.sprxJSON 解析
libSceLibcInternal.sprx内部 C 库
libSceNgs2.sprx音频处理引擎
libSceUlt.sprx通用库工具

完整模块清单见 README 的 Firmware files 一节。⚠️ 这一步没有任何替代方案:网上流传的「固件下载包」请远离,只从自己的主机提取。

输入接管:Xbox 和 DualShock 手柄插上就能用,无需配置。纯键盘鼠标党记几个高频键位就够——WASD 管左摇杆、IJKL 管右摇杆、方向键对应十字键、回车是 Options、空格是触摸板;F10 看帧率、F11 切全屏、F12 触发 RenderDoc 抓帧。macOS 上把 Ctrl 换成 Command。

卡住了?对号入座

Q:编译到一半机器直接卡死/风扇狂转?A:是并行编译吃光了资源,去掉并行参数重来:cmake --build ./build。慢就慢点,能出结果就好。

Q:怎么确认自己的显卡支持 Vulkan?A:装好vulkan-validationlayers后执行vulkaninfo | grep deviceName,能看到显卡名就说明驱动链路正常;一条都没有就去更新显卡驱动。

Q:编译成功了,但想要图形界面(GUI)?A:这个仓库是模拟器核心,不含 GUI。想要点选式体验,去官方配套的 QtLauncher 发布页下载;Linux 上 GUI 起不来时先补装qt6-base-dev一类 Qt 依赖再重编。

Q:程序能启动,但游戏进去就黑屏或报错?A:九成是固件不全。回到上一节,核对sys_modules里的模块是否齐全,尤其是字体和 JSON 那几个。

Q:我喜欢的游戏能跑吗?A:项目还处于早期,不是所有游戏都能玩。先查官方的游戏兼容性列表,能跑的大多是优化版《黑暗之魂》《荒野大镖客》这类。

写在最后

shadPS4 还在快速进化,装好之后建议常看 documents/Debugging/Debugging.md 与官方 Wiki 跟进玩法,更多交流去项目 Discord 找同好。

【免费下载链接】shadPS4PlayStation 4 emulator for Windows, Linux, macOS and FreeBSD written in C++项目地址: https://gitcode.com/GitHub_Trending/sh/shadPS4

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询