news 2026/9/3 15:52:39

20 分钟跑通 yuzu:从零编译并启动第一个 Switch 游戏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
20 分钟跑通 yuzu:从零编译并启动第一个 Switch 游戏

20 分钟跑通 yuzu:从零编译并启动第一个 Switch 游戏

【免费下载链接】yuzu任天堂 Switch 模拟器项目地址: https://gitcode.com/GitHub_Trending/yu/yuzu

yuzu 是一款开源的任天堂 Switch 模拟器,用 C++ 编写,可运行在 Windows、Linux 和 Android 上。本文带你从克隆源码开始,依次完成编译、密钥与固件安装、游戏启动四步,全程约 20 分钟(不含等待依赖安装与编译)。跟做完后,你的电脑上会有一个自己编译的 yuzu,并且能启动一款 Switch 游戏。

出发前:环境自检

开始前,对照下面清单确认你的机器满足条件。任何一条不满足,先补齐再动手。

  • 操作系统:Linux(Ubuntu 22.04 及以上),图形界面环境
  • 磁盘空间:预留 20 GB(源码、依赖、构建产物)
  • 内存:8 GB 以上,16 GB 更稳
  • 工具链:能执行sudo安装软件包
  • 必备文件:
    • 一份从你自有Switch 提取的prod.keys(游戏解密靠它)
    • 一份从你自有 Switch 导出的系统固件文件(.nro.nca
    • 至少一款合法持有的游戏文件(.nsp.xci

密钥和固件只能从本人设备提取,不要使用来路不明的共享文件。

主线:最小闭环走通

以下每步都是三段式:动作 → 命令/操作 → 验证点。出现异常时不要自行展开排查,直接记下现象,转「卡住了?查这张表」。

步骤 1:克隆源码仓库

  • 动作:在当前任意目录下克隆 yuzu 源码
  • 命令:
git clone https://gitcode.com/GitHub_Trending/yu/yuzu cd yuzu
  • 验证点:ls能看到CMakeLists.txtsrc/externals/三项。后面所有命令都在yuzu/目录里执行。

步骤 2:安装编译依赖

  • 动作:安装编译器、CMake 和 Qt、FFmpeg 等第三方库。Qt 负责主界面,FFmpeg 用于系统应用的视频播放,缺了会直接配置失败。
  • 命令(Ubuntu/Debian):
sudo apt update sudo apt install -y build-essential cmake git python3 pkg-config sudo apt install -y qt{5,6}-base-dev qt6-base-dev libqt{5,6}-opengl-dev \ libqt{5,6}-multimedia-dev libavcodec-dev libavformat-dev libavutil-dev \ libswscale-dev libswresample-dev libsdl2-dev libasound2-dev
  • 验证点:两条命令都以 0 退出。发行版包名不一致(如 Fedora 用dnf)导致装不上 → 转 H2-4。

步骤 3:CMake 配置

  • 动作:创建独立构建目录并运行 CMake 配置
  • 命令:
mkdir -p build && cd build cmake .. -DCMAKE_BUILD_TYPE=Release
  • 验证点:配置输出结尾出现-- Configuring done-- Generating done配置过程会自动按 vcpkg.json 拉取 boost、fmt、lz4 等依赖,需要联网,耗时约 5~15 分钟。

步骤 4:编译 yuzu 可执行文件

  • 动作:多核并行编译,预计 30~90 分钟
  • 命令:
make -j$(nproc)
  • 验证点:执行ls bin/yuzu,能看到二进制文件。产物固定在build/bin/下,见 CMakeLists.txt 中的CMAKE_RUNTIME_OUTPUT_DIRECTORY设置。

步骤 5:首次启动并确认数据目录

  • 动作:首次启动模拟器
  • 操作:在build目录下执行./bin/yuzu
  • 验证点:主窗口打开;同时~/.local/share/yuzu/下生成了keys/config/log/等子目录。目录结构定义在 src/common/fs/fs_paths.h。

步骤 6:放置密钥文件

  • 动作:把prod.keys复制进密钥目录
  • 命令:
mkdir -p ~/.local/share/yuzu/keys cp {prod.keys所在路径}/prod.keys ~/.local/share/yuzu/keys/
  • 验证点:ls ~/.local/share/yuzu/keys/能看到prod.keys密钥缺失时游戏无法解密,对应 密钥管理器 的加载逻辑。

步骤 7:安装系统固件

  • 动作:通过菜单安装固件
  • 操作:yuzu 主窗口 → 菜单「文件 → 安装固件」→ 选择你提取的.nro/.nca文件 → 等待进度条走完(约 2 分钟)
  • 验证点:安装完成弹出提示;主窗口底部状态栏开始显示固件版本号。安装入口实现在 src/yuzu/main.cpp。

步骤 8:启动一款游戏

  • 动作:让 yuzu 找到你的游戏
  • 操作:主窗口「文件 → 添加游戏目录」→ 选中存放.nsp/.xci的文件夹 → 双击列表中的游戏
  • 验证点:画面进入加载进度,约 1~2 分钟后进入游戏主菜单。首次启动需要预编译着色器,会明显比之后慢,属正常现象。

一组建议的基础参数

游戏跑起来后,打开「设置 → 图形 / CPU」,把下面几项作为默认值抄进去:

renderer = Vulkan # 图形 → 渲染后端 resolution = 1x # 图形 → 分辨率缩放 shader_cache = on # 图形 → 着色器缓存 cpu_threads = 4 # CPU → 编译线程

按硬件分档调参

游戏稳定运行后,按你的硬件档位微调,只动表格里的参数,其余保持默认:

档位适用场景分辨率缩放CPU 线程预期表现
入门档核显 / 入门独显,8 GB 内存1x4主流 3D 大作 30~45 FPS
主流档中端独显(8 GB 显存),16 GB 内存2x8720p 等效画质下稳定 60 FPS
发烧档高端独显,32 GB 内存3x12接近 1080p 放大画质,55~60 FPS

调参顺序建议:先拉满分辨率,掉帧再往下退一档,而不是先压低再逐步提高。

卡住了?查这张表

症状可能原因处理
./bin/yuzu窗口闪退系统库缺失~/.local/share/yuzu/log/末尾报错补库
CMake 配置失败依赖未装齐回步骤 2 核对清单
主窗口提示缺少密钥prod.keys未放对按步骤 6 复制进keys/
启动游戏黑屏不动固件未安装回步骤 7 重新安装
编译内存不足被杀-j开太大make -j2续编
帧率持续低于 20参数超硬件档按 H2-3 退一档

收尾

到这里,编译、密钥、固件、游戏启动四步已经走完,yuzu 的最小闭环跑通了。下一步:回到「按硬件分档调参」,按你的硬件抄一组参数,重新加载游戏对比帧率。

  • 构建配置:CMakeLists.txt
  • 依赖清单:vcpkg.json
  • 数据目录定义:src/common/fs/fs_paths.h

【免费下载链接】yuzu任天堂 Switch 模拟器项目地址: https://gitcode.com/GitHub_Trending/yu/yuzu

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 15:53:05

2GB显存也能跑LLM?量化+内存卸载实战指南

1. 这篇文章真正要解决的问题 先说一个不少 AI 应用开发者都遇到过的场景:本地搞到了一张老显卡,显存只有 2GB,想跑个开源大模型做点自然语言处理、文本生成或文档解析的前期验证。去查资料时看到满屏的 7B、13B、70B 模型推荐配置&#xff0…

作者头像 李华