Rust + Tauri Windows 开发问题总结

64 阅读2分钟

一、报错总结

link.exe 链接失败

error: linking with link.exe failed: exit code: 1
link: extra operand ...
Try 'link --help' for more information.

根本原因:有两种可能

原因说明
① MSVC 工具链不完整没有安装 Visual Studio C++ 构建工具
② Git 劫持了 link.exeD:\Git\usr\bin\link.exe 是 GNU link(ln 工具),不是微软的链接器

解决方案

  1. 安装 Visual Studio C++ Build Tools(见下文)
  2. 重启电脑
  3. 执行 cargo clean && cargo build

💡 说明where link 可能仍然显示 Git 的路径,这不影响项目运行。Rust 工具链会自动定位 MSVC 的 link.exe,不依赖系统 PATH 环境变量。


二、Visual Studio 安装细节

下载地址

👉 visualstudio.microsoft.com/visual-cpp-…

安装选项

⚠️ 重要:选择「手动选择工作负载和组件」,不要复制原有配置!

image.png


✅ 必须安装的组件

image.png

组件作用
使用 C++ 的桌面开发(工作负载)核心入口,必须勾选
MSVC v143 - x64/x86 build toolsRust 实际调用的编译/链接器
Windows 10/11 SDK系统库头文件
C++ CMake tools for Windows很多 Rust crate 依赖 CMake
vcpkg 管理器部分 crate 间接依赖

💡 提示C++ CMake tools for Windows 需要在搜索框中输入 cmake 才能找到。


❌ 可以不装的组件(节省空间)

组件原因
MSVC AddressSanitizerC++ 内存检测,Rust 不需要
测试工具功能 - 生成工具VS 单元测试用
C++ ATL / MFC传统 Windows GUI 开发
C++/CLI 支持.NET + C++ 混合开发
MSVC v142 / v141 / v140老版本兼容,不需要
WinUI / .NET / Web / Azure 工作负载与 Rust/Tauri 无关

安装后操作

  1. 重启电脑(不只是终端)

  2. 重新编译

    cargo clean
    cargo build
    

💡 注意:无需手动配置环境变量。Rust 工具链会自动检测并使用 MSVC 的 link.exe,即使 where link 显示的是 Git 路径也没关系。


三、其他常见问题

image.png

Q: VS 2022 和 VS 2026 需要卸载一个吗?

不需要,可以共存。Rust 只认 MSVC 工具链路径,不关心 VS 版本。

Q: 打包的 Windows 应用能在 Win10 上运行吗?

可以。Windows SDK 是向下兼容的:

  • ✅ 支持 Windows 11
  • ✅ 支持 Windows 10
  • ❌ 不支持 Windows 7(Tauri 本身也不支持)

四、核心理解

在 Windows 上:

组件作用
Rust编程语言
Cargo构建工具 + 包管理
MSVC真正的 C/C++/系统库 编译 + 链接

没有 MSVC,Rust 在 Windows 上是残废状态。