手把手构建 Ryujinx:4 条命令把 Switch 模拟器从源码跑起来
【免费下载链接】Ryujinx用 C# 编写的实验性 Nintendo Switch 模拟器项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx
Ryujinx 是一个用 C# 写的开源 Nintendo Switch 模拟器。这篇文章带你从零走到"自己的模拟器窗口弹出来":装好环境、一条命令编译、启动验证成功,全程不超过 10 分钟,不需要任何 C# 开发经验。
构建完成长什么样:先认识你的成果
先说结果,你心里有个目标再动手会踏实很多。
编译成功后,仓库根目录下会多出一个build文件夹,里面躺着:
Ryujinx主程序(Windows 上是Ryujinx.exe)- 一堆配套 DLL 和音频驱动配置(如
alsoft.ini)
直接运行主程序,模拟器窗口就会打开。模拟器本体和系统文件都放在用户目录下的Ryujinx文件夹里,启动后可以从文件菜单的"Open Ryujinx Folder"一键跳转过去。
一条命令确认 .NET SDK 是否达标
Ryujinx 是纯 .NET 项目,唯一的硬依赖是 .NET SDK。仓库里的 global.json 锁定了最低版本 8.0.100(允许更高的小版本),所以装 .NET 8.0 SDK 或更新版本即可。
在仓库根目录执行:
dotnet --version看到8.0.1xx或更高的版本号,这一关就过了。没装的话,去 .NET 官网下载 8.0 SDK 装完再来。另外提前说一句:模拟器运行至少需要 8GiB 内存,配置偏低时游玩体验会打折扣,这不是编译问题。
克隆仓库并进入项目目录
git clone https://gitcode.com/GitHub_Trending/ry/Ryujinx cd Ryujinx仓库不大,clone 很快。整个解决方案由根目录的 Ryujinx.sln 统一管理,所有 C# 模块都在 src/ 下面,后面遇到路径可以随时对照。
一条命令完成 Release 编译
这是全文最核心的一步。在项目根目录执行:
dotnet build -c Release -o build它会自动解析项目间的依赖,把几十个模块按顺序编译好,产物统一落到build目录。主程序的构建配置写在 src/Ryujinx/Ryujinx.csproj,首次编译需要联网拉 NuGet 包,耐心等它跑完。
怎么判断成功?看命令输出的最后几行,出现类似"Build succeeded"且"0 Error(s)"就是成功了。然后确认build文件夹里已经生成了Ryujinx可执行文件。
如果卡住或报错,最常见的原因就是 SDK 版本低于 global.json 要求,回到上一条重新检查。
启动模拟器并确认它活着
# Windows build\Ryujinx.exe # Linux / macOS build/Ryujinx窗口弹出、出现主界面,就说明编译产物完全可用。启动时它会做几件值得留意的事:
- 找不到
Config.json时会生成一份默认配置,以后所有设置都存在这里; - 没有
prod.keys时会弹出提示——这是 Switch 解密密钥,属于模拟器自身的正常逻辑,不代表你构建失败; - 运行日志写在用户目录下的
Logs里,排查问题先看这里。
进阶:换个模式或换个平台
跑通之后,这几个分支按需取用:
想调试源码?把配置换成 Debug,会额外带上 Avalonia 调试工具:
dotnet build -c Debug -o build想发布独立可执行文件?指定运行标识符后会打包成单文件(自带裁剪),例如 Windows 版:
dotnet publish -c Release -r win-x64 --self-containedlinux-x64、osx-x64同理。项目还支持在 distribution/macos/ 的脚本上追加--configuration参数走发布流程。
改了代码想验证逻辑?跑测试套件,覆盖 CPU、音频、内存等核心模块:
dotnet test src/Ryujinx.Tests全部显示通过,你的改动就没把老功能弄坏。
自检清单
dotnet --version输出 8.0.1xx 或更高dotnet build -c Release -o build结尾显示 0 Errorbuild目录里能找到主程序- 主程序启动后弹出模拟器窗口
- (可选)
dotnet test全绿
一段话回顾:装 .NET 8 SDK → clone 仓库 → 根目录跑dotnet build -c Release -o build→ 运行build里的主程序看到窗口,构建之旅就结束了。想深入理解项目结构,可以从 docs/ 的文档索引和 src/ARMeilleure/ 的 CPU 翻译器开始读起。
【免费下载链接】Ryujinx用 C# 编写的实验性 Nintendo Switch 模拟器项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考