第 2 章 开发环境全套搭建
本章目标
- 在 macOS / Windows / Linux 任意一个系统下装好 Rust、Node.js、Tauri CLI、系统 WebView 依赖。
- 配置好 VS Code 的必备插件,让 Rust 和 TypeScript 写起来顺手。
- 跑通
cargo tauri info,确认环境无误。
为什么环境是大坑
Tauri 的环境比单一语言项目复杂:你需要 Rust 工具链 + Node 工具链 + 系统原生依赖,三者任意一个不对就会卡在 cargo build 阶段半天。我在开始做本书的时候专门统计过社区 issue,「环境搭不起来」占了初学者提问的约 40%。把这一章做扎实,后面才能愉快地学。
一、Rust 工具链
安装 rustup
所有平台都用 rustup。官网:https://rustup.rs。
macOS / Linux:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Windows:下载 rustup-init.exe,双击运行,选 默认安装(MSVC 工具链)。
装完关掉当前终端重开一个,执行:
rustc --version
cargo --version
应该能看到 rustc 1.77.x 以上。
国内网络加速
访问 crates.io 可能慢。创建 ~/.cargo/config.toml(Windows 是 %USERPROFILE%\.cargo\config.toml),写入:
[source.crates-io]
replace-with = 'rsproxy-sparse'
[source.rsproxy]
registry = "https://rsproxy.cn/crates.io-index"
[source.rsproxy-sparse]
registry = "sparse+https://rsproxy.cn/index/"
[registries.rsproxy]
index = "https://rsproxy.cn/crates.io-index"
[net]
git-fetch-with-cli = true
常用组件
rustup component add rust-src rust-analyzer clippy rustfmt
rust-analyzer:让 IDE 跳转/补全。clippy:Rust 官方 lint。rustfmt:格式化。
二、Node.js 工具链
安装 Node 20+
推荐用 fnm(跨平台)或 nvm。
fnm(推荐):
# macOS / Linux
curl -fsSL https://fnm.vercel.app/install | bash
fnm install 20
fnm use 20
# Windows (PowerShell)
winget install Schniz.fnm
fnm install 20
fnm use 20
检查:
node -v # v20.x
npm -v # 10.x
推荐使用 pnpm
本书示例使用 pnpm,速度快、磁盘占用少。
npm install -g pnpm
pnpm -v
国内 npm 镜像
pnpm config set registry https://registry.npmmirror.com
三、系统原生依赖
这是最容易被忽略的一步,但 Tauri 编译需要本地的 WebView 运行时和一些 C/C++ 库。
macOS
只需要 Xcode Command Line Tools:
xcode-select --install
WebView 是系统自带的 WKWebView,无需单独装。
Windows
必须装两个东西:
- Microsoft C++ Build Tools(在 Visual Studio Installer 里勾选「Desktop development with C++」,或者单独下载 Build Tools for Visual Studio)。
- WebView2 Runtime:Windows 11 默认自带。Windows 10 从 https://developer.microsoft.com/microsoft-edge/webview2/ 下载 Evergreen Bootstrapper 装好。
Linux(以 Ubuntu 24.04 为例)
sudo apt update
sudo apt install libwebkit2gtk-4.1-dev \
build-essential \
curl \
wget \
file \
libxdo-dev \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev
其他发行版(Fedora、Arch)请查 Tauri 官网 Prerequisites。
四、Tauri CLI
有两种装法:
方式 1:全局 cargo 安装(本书推荐)
cargo install create-tauri-app --locked
cargo install tauri-cli --version "^2.0" --locked
装完后:
cargo tauri --version
# tauri-cli 2.x.x
方式 2:项目级 npm 依赖
在每个 Tauri 项目里单独装:
pnpm add -D @tauri-apps/cli@^2
调用方式变成 pnpm tauri dev。
两种方式可以共存。
五、VS Code 与插件
Tauri 有前后端两套语言,所以 IDE 要能同时驾驭。VS Code 是社区主流。
必装插件:
- rust-analyzer(rust-lang.rust-analyzer)
- Tauri(tauri-apps.tauri-vscode):对 capability JSON 的 schema 支持
- ESLint(dbaeumer.vscode-eslint)
- Prettier(esbenp.prettier-vscode)
- Tailwind CSS IntelliSense(bradlc.vscode-tailwindcss)
- Error Lens(usernamehw.errorlens):把报错直接显示在行尾
- Even Better TOML(tamasfe.even-better-toml)
推荐 settings.json(VS Code 的 UserSetting 或工程 .vscode/settings.json):
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[rust]": {
"editor.defaultFormatter": "rust-lang.rust-analyzer"
},
"rust-analyzer.cargo.features": "all",
"rust-analyzer.check.command": "clippy",
"files.watcherExclude": {
"**/target/**": true,
"**/node_modules/**": true
}
}
六、验证环境:运行 cargo tauri info
随便找个目录,执行:
cargo tauri info
你会看到类似:
[✔] Environment
- OS: Mac OS 14.x ...
- Xcode Command Line Tools: installed
- rustc: 1.77.x
- cargo: 1.77.x
- rustup: 1.26.x
[-] Packages
- tauri [RUST]: 2.0.x
- tauri-build [RUST]: 2.0.x
- @tauri-apps/api [NPM]: 2.0.x
- @tauri-apps/cli [NPM]: 2.0.x
如果有任何 ✗,按提示处理。常见的:
Microsoft C++ Build Tools未装 → 去 Visual Studio Installer 勾选。libwebkit2gtk-4.1-dev缺失 →apt install一下。WebView2 Runtime未装 → 下载 Evergreen 安装。
七、第一个「能跑」的 Tauri 项目(预览)
下一章(第 3 章)之前,请先跑通这个动作,确认环境完全就绪:
cd ~/projects # 或你喜欢的目录
pnpm create tauri-app@latest
交互式问答时选:
- Project name:
tauri-smoke-test - Identifier:
com.example.smoke - Choose which language to use for your frontend:TypeScript / JavaScript
- Choose your package manager:pnpm
- Choose your UI template:React
- Choose your UI flavor:TypeScript
然后:
cd tauri-smoke-test
pnpm install
pnpm tauri dev
第一次 cargo build 会花 3–10 分钟(取决于网络和 CPU)。结束后一个窗口弹出,里面显示 "Welcome to Tauri!"——你就完事了。
常见陷阱
1. 国内网络太慢,
cargo build一直卡在Updating crates.io index。检查
~/.cargo/config.toml的镜像配置,rustup show确认默认工具链。
2. Windows 上
error: linker 'link.exe' not found。没装 C++ Build Tools。去 Visual Studio Installer 勾选「使用 C++ 的桌面开发」工作负载。
3. Linux 上
error: failed to run custom build command for 'webkit2gtk-sys'。Tauri 2.x 用的是
libwebkit2gtk-4.1,Ubuntu 20.04/22.04 默认只有4.0。升级到 24.04 或手动装4.1包。
4. macOS M1/M2 下,
cargo tauri dev编译缓慢。第一次编译慢是正常的。之后增量编译很快(2–5 秒)。如果每次都满编译,检查
target/是否被清理、是否用了cargo clean。
本章小结
- Rust + Node + 系统 WebView 依赖 + Tauri CLI = 环境完整。
- VS Code 插件要装齐,开发体验差距巨大。
cargo tauri info是你验证环境的银弹。
动手时刻
-
rustc --version能输出 1.77+。 -
node -v能输出 v20+。 -
cargo tauri info所有项为 ✓。 -
跑通
tauri-smoke-test能看到欢迎窗口。
完成上面四项后进入第 3 章:零基础前端速成。