windows 下 rust + mingw 的在线安装
说明
windows 安装 Rust 默认使用的C语言依赖 Visual Studio,但该工具占用空间大安装也较为麻烦,可以选用轻便的 mingw64 包。
参考文档
mingw64 的安装和配置
mingw64 的下载地址: https://github.com/niXman/mingw-builds-binaries/releases
下载类似x86_64-15.1.0-release-posix-seh-msvcrt-rt_v12-rev0.7z
或者x86_64-15.1.0-release-posix-seh-ucrt-rt_v12-rev0.7z
的文件即可。
关于 mingw64 压缩包关键字说明:
- 架构(Architecture):x86_64表示压缩包适用于64位的x86处理器架构。 版本(Version):15.1.0-release 表示压缩包的版本号为15.1.0,并且是正式发布的版本。 操作系统平台(Operating System Platform): posix:适用于符合POSIX标准的操作系统,如Linux、UNIX等。 win32:适用于32位的Windows操作系统。 (如果Linux和Window混用选posix;如果只用Windows开发选win32)
- 异常处理(Exception Handling): seh:压缩包使用结构化异常处理(Structured Exception Handling)来处理异常。
- 运行时库(Runtime Library):
msvcrt:压缩包使用Microsoft Visual C++ 运行时库(MSVCRT);MSVCRT 是 Microsoft Visual C++ 编译器的旧版运行时库,通常与早期的Visual C++ 版本(如Visual Studio 2010及更早版本)相关联。
ucrt:压缩包使用通用C运行时库(UCRT);UCRT 是自 Windows 10 起引入的新一代运行时库,与较新版本的Visual C++(如Visual Studio 2015及更新版本)相关联。
综上所述,UCRT更新推荐开发使用,如果考虑兼容则用MSVCRT - 版本修订(Revision):rev0 表示这些压缩包的修订版本号。
安装完成后,务必把mingw安装目录下的bin目录添加到PATH环境变量中。
rust 的安装和配置
安装前的环境变量设置
rust 在 windows 系统中设置环境变量
1# 设置系统级的永久环境变量 (如果只是为当前用户设置永久环境变量则去掉 /m 参数)
2setx RUSTUP_HOME "D:\dev\rust\rustup" /m
3setx CARGO_HOME "D:\dev\rust\cargo" /m
4
5# 设置清华源rustup国内安装地址的环境变量,加快在线安装速度
6# 临时设置
7set RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup
8set RUSTUP_UPDATE_ROOT=https://mirrors.tuna.tsinghua.edu.cn/rustup/rustup
9# 永久设置
10setx RUSTUP_DIST_SERVER https://mirrors.tuna.tsinghua.edu.cn/rustup /m
11setx RUSTUP_UPDATE_ROOT https://mirrors.tuna.tsinghua.edu.cn/rustup/rustup /m
12
13# 其他镜像地址
14# 设置中国科技大学的网络镜像代理rustup国内安装地址的环境变量,加快在线安装速度
15setx RUSTUP_DIST_SERVER https://mirrors.ustc.edu.cn/rust-static /m
16# 用于更新 rustup
17setx RUSTUP_UPDATE_ROOT https://mirrors.ustc.edu.cn/rust-static/rustup /m
安装
先下载 rustup 在线安装程序;下载地址: https://www.rust-lang.org/zh-CN/tools/install
下载完成后,运行 rustup-init.exe
安装过程中,有三个步骤需要注意:
选择安装前提(有可能没有这一步骤):
1Rust Visual C++ prerequisites 2 3Rust requires a linker and Windows API libraries but they don't seem to be 4available. 5 6These components can be acquired through a Visual Studio installer. 7 81) Quick install via the Visual Studio Community installer 9 (free for individuals, academic uses, and open source). 10 112) Manually install the prerequisites 12 (for enterprise and advanced users). 13 143) Don't install the prerequisites 15 (if you're targetting the GNU ABI). 16 17>3这里选3,因为我们要安装的开发环境是 x86_64-pc-windows-gnu
安装方式:
1You can uninstall at any time with rustup self uninstall and 2these changes will be reverted. 3 4Current installation options: 5 6 7 default host triple: x86_64-pc-windows-msvc 8 default toolchain: stable (default) 9 profile: default 10 modify PATH variable: yes 11 121) Proceed with installation (default) 132) Customize installation 143) Cancel installation 15>2这里选2,表示自定义安装
安装开发环境:
1I'm going to ask you the value of each of these installation options. 2You may simply press the Enter key to leave unchanged. 3 4Default host triple? [x86_64-pc-windows-msvc] 5x86_64-pc-windows-gnu这里输入:x86_64-pc-windows-gnu ,表示安装 x86_64-pc-windows-gnu 开发环境
其他步骤一路按回车键即可。
安装 Toolchain
Toolchain 在 idea 开发中的代码提示和调试有重要作用。
1rustup toolchain install stable
检查是否安装成功
1D:\dev\bin>rustc --version
2rustc 1.88.0 (6b00bc388 2025-06-23)
3
4D:\dev\bin>cargo --version
5cargo 1.88.0 (873a06493 2025-05-10)
cargo 配置国内源
在上面的 CARGO_HOME 目录下新建 config.toml 文件($CARGO_HOME/config.toml),内容如下:
1[source.crates-io]
2replace-with = 'tuna'
3
4# 上海交通大学
5[source.sjtu]
6registry = "sparse+https://mirrors.sjtug.sjtu.edu.cn/crates.io-index/"
7
8# 清华大学
9[source.tuna]
10registry = "sparse+https://mirrors.tuna.tsinghua.edu.cn/crates.io-index/"
11
12[registries.tuna]
13index = "sparse+https://mirrors.tuna.tsinghua.edu.cn/crates.io-index/"
14
15# 中国科学技术大学
16[source.ustc]
17registry = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"
18
19[registries.ustc]
20index = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"
21
22# 阿里云源
23[source.aliyun]
24registry = "sparse+https://mirrors.aliyun.com/crates.io-index/"
25
26# 字节跳动源
27[source.rsproxy]
28registry = "https://rsproxy.cn/crates.io-index"
29
30[source.rsproxy-sparse]
31registry = "sparse+https://rsproxy.cn/index/"
32
33[registries.rsproxy]
34index = "https://rsproxy.cn/crates.io-index"
35
36[net]
37git-fetch-with-cli = true
说明:
- 国内镜像可以书写多个,类似
[source.XXXXXX]的结构;XXXXXX 表示镜像源的名称 - registry 表示镜像源的url;url中的
sparse+表示支持稀疏索引(cargo 版本必须 >= 1.68 ;可以加快获取包的速度),链接末尾的 / 不能缺少 - replace-with 为替换的镜像源的名称
使用示例
1# 新建名为 rust-demo 的项目
2cargo new rust-demo
3
4# 进入项目目录
5cd rust-demo
6
7# 运行项目
8cargo run
9
10# 构建项目
11cargo build
12
13# 为当前项目添加依赖
14cargo add actix-web diesel
15
16cargo add axum tokio serde tower-http
17
18cargo add tower_http -F cors,trace
19# 或者
20cargo add tower_http --features cors,trace
21
22# 为当前项目删除依赖
23cargo remove diesel
评论