Rust 安装教程:从零开始的详尽指南
引言:为何选择 Rust?
在当今快速发展的软件开发领域,选择一门合适的编程语言至关重要。Rust,作为一门现代化的系统编程语言,近年来以其卓越的性能、内存安全保证和强大的并发处理能力,赢得了全球开发者的广泛关注和青睐。它由 Mozilla 主导开发,并拥有一个活跃、热情的社区。Rust 的设计哲学旨在提供“零成本抽象”,这意味着开发者可以在享受高级语言特性的同时,不必牺牲底层控制和运行时效率。
无论您是经验丰富的系统程序员,寻求一种更安全的 C/C++ 替代方案,还是希望涉足高性能 Web 服务、游戏开发、嵌入式系统或命令行工具构建的新手,Rust 都提供了一个引人入胜的选择。它的强类型系统和所有权模型能够在编译时捕获大量常见的编程错误,尤其是内存安全相关的 bug(如空指针解引用、数据竞争等),这极大地提高了软件的可靠性和安全性。
本教程旨在为完全没有 Rust 背景的初学者提供一份详尽的、手把手的安装指南。我们将从环境准备开始,详细介绍在主流操作系统(Windows, macOS, Linux)上安装 Rust 的官方推荐方式——rustup
,并解释安装过程中涉及的关键概念。此外,我们还将涵盖如何验证安装、管理 Rust 版本、理解安装的核心组件,并引导您编写并运行第一个 Rust 程序。最终目标是让您顺利搭建起 Rust 开发环境,为后续的学习和实践奠定坚实的基础。准备好了吗?让我们一起踏上 Rust 的探索之旅!
一、 准备工作:确保环境就绪
在开始安装 Rust 之前,请确保满足以下基本条件:
- 操作系统:Rust 官方支持 Windows、macOS 和 Linux 三大主流操作系统。本教程将分别介绍这些平台的安装方法。请确保您的操作系统版本是受支持的(通常近几年的版本都没问题)。
- 网络连接:安装过程需要从互联网下载
rustup
安装器以及 Rust 工具链本身。请确保您的计算机拥有稳定、通畅的网络连接。 - 命令行/终端访问:Rust 的安装和许多日常开发任务都是通过命令行界面(CLI)完成的。
- Windows 用户:您可以使用
cmd.exe
(命令提示符)或PowerShell
。推荐使用更新的 Windows Terminal。 - macOS 用户:您可以使用系统自带的
Terminal.app
(位于“应用程序”->“实用工具”)。 - Linux 用户:您可以使用发行版自带的各种终端模拟器,如
gnome-terminal
,konsole
,xterm
等。
- Windows 用户:您可以使用
- (特定平台)依赖项:
- Windows:Rust 依赖于 C 语言的链接器(Linker)。
rustup
在 Windows 上会尝试使用 Microsoft Visual C++ (MSVC) 的构建工具作为默认的链接器。如果您的系统尚未安装,rustup
安装程序通常会提示您安装 “Build Tools for Visual Studio”。您可以从 Visual Studio 下载页面 下载 “Build Tools for Visual Studio” (在“所有下载” -> “工具和独立组件”中找到),安装时务必勾选 “C++ build tools” 或 “使用 C++ 的桌面开发” 工作负载。如果您更倾向于使用 GNU 工具链 (GCC),也可以配置 Rust 使用 MinGW/MSYS2 环境,但这通常更复杂一些,本教程将重点介绍官方推荐的 MSVC 方式。 - macOS:通常不需要额外安装,macOS 自带了
clang
作为 C 编译器和链接器,或者可以通过安装 Xcode Command Line Tools (运行xcode-select --install
命令) 来获取。rustup
会自动检测并使用它们。 - Linux:需要一个 C 编译器,通常是 GCC。大多数 Linux 发行版预装了 GCC 或可以通过包管理器轻松安装。例如,在基于 Debian/Ubuntu 的系统上,您可以运行
sudo apt update && sudo apt install build-essential
;在基于 Fedora/CentOS/RHEL 的系统上,可以运行sudo dnf groupinstall "Development Tools"
或sudo yum groupinstall "Development Tools"
。rustup
会依赖这些基础构建工具。
- Windows:Rust 依赖于 C 语言的链接器(Linker)。
二、 核心安装:拥抱 rustup
工具链管理器
Rust 官方推荐使用 rustup
来安装和管理 Rust 版本。rustup
是一个强大的工具链复用器(toolchain multiplexer),它允许您轻松地安装、更新、切换不同版本(如 stable、beta、nightly)的 Rust,管理目标平台的交叉编译支持,以及安装额外的组件(如 clippy
代码检查器、rustfmt
代码格式化器等)。使用 rustup
是管理 Rust 环境最便捷、最灵活的方式。
1. Windows 平台安装
-
步骤 1: 下载
rustup-init.exe
访问 Rust 官方网站的安装页面 (https://www.rust-lang.org/tools/install)。网站会自动检测您的操作系统。对于 Windows,它会提供一个下载链接,指向rustup-init.exe
文件。点击链接下载该文件。 -
步骤 2: 运行安装程序
找到下载的rustup-init.exe
文件,双击运行它。这时会弹出一个命令行窗口,显示欢迎信息和安装选项。“`
Welcome to Rust!This will download and install the official compiler for the Rust programming
language, and its package manager, Cargo.Rustup metadata and toolchains will be installed into the Rustup home directory,
located at:C:\Users\YourUsername.rustup
The Cargo home directory is located at:
C:\Users\YourUsername.cargo
This path will then be added to your PATH environment variable by modifying the
HKEY_CURRENT_USER/Environment/PATH registry key.You can uninstall at any time with
rustup self uninstall
and these changes will
be reverted.Current installation options:
default host triple: x86_64-pc-windows-msvc
default toolchain: stable (default)
modify PATH variable: yes1) Proceed with installation (default)
2) Customize installation
3) Cancel installation“`
-
步骤 3: 选择安装选项
- 选项 1 (默认):直接按
1
然后回车。这是最常见的选择,它会:- 将 Rust 安装到用户目录下的
.rustup
和.cargo
文件夹。 - 安装
stable
(稳定版) 工具链。 - 自动将
C:\Users\YourUsername\.cargo\bin
添加到系统的PATH
环境变量中(针对当前用户)。这使得您可以在任何命令行窗口直接调用rustc
,cargo
,rustup
等命令。
- 将 Rust 安装到用户目录下的
- 选项 2 (自定义):如果您需要更改安装目录、选择不同的默认工具链(如
beta
或nightly
)、或者指定不同的目标平台(host triple),可以选择2
然后回车,根据提示进行设置。对于初学者,通常不需要自定义。 - 选项 3 (取消):输入
3
回车,退出安装。
注意关于 MSVC 依赖:如果安装程序检测到您没有安装所需的 C++ Build Tools,它会在这里给出明确的提示和指引,可能会暂停安装并要求您先安装依赖项。请按照提示操作。
- 选项 1 (默认):直接按
-
步骤 4: 等待安装完成
选择选项后,rustup
会开始下载并安装所需的组件。根据您的网络速度,这可能需要几分钟时间。安装完成后,它会提示您 Rust 已成功安装。“`
Rust is installed now. Great!To get started you may need to restart your current shell.
This would reload its PATH environment variable to include
Cargo’s bin directory ($HOME/.cargo/bin).To configure your current shell, run:
source “$HOME/.cargo/env”
“`
(注意:Windows 上的提示可能略有不同,但核心意思是 PATH 已更新,可能需要重启 shell 或打开新窗口)。 -
步骤 5: 配置环境变量 (通常自动完成)
如前所述,rustup
通常会自动为您配置PATH
。为了让当前打开的命令行窗口识别到新安装的 Rust 命令,您需要关闭当前窗口并重新打开一个新的cmd
或PowerShell
窗口。如果新窗口中仍然无法识别rustc
或cargo
命令,您可能需要手动检查并配置环境变量,或者重启计算机。
2. macOS 和 Linux 平台安装
在 macOS 和 Linux 上,安装过程通常更加简洁,使用一个 curl
命令即可完成。
-
步骤 1: 打开终端
启动您的终端应用程序。 -
步骤 2: 执行安装命令
在终端中粘贴并执行以下命令:bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
这个命令的作用是:
*curl
: 一个强大的文件传输工具,用于从指定的 URL 下载内容。
*--proto '=https' --tlsv1.2
: 强制使用 HTTPS 协议和 TLS 1.2 或更高版本进行安全连接。
*-sSf
: 选项组合,-s
表示静默模式(不显示进度条),-S
表示在出错时显示错误信息,-f
表示在服务器返回错误时(如 404 Not Found)不输出内容并以错误码退出。
*https://sh.rustup.rs
:rustup
官方安装脚本的 URL。
*| sh
: 将curl
下载的脚本内容通过管道(|
)传递给sh
(Bourne shell 或兼容的 shell) 来执行。 -
步骤 3: 响应安装提示
执行命令后,脚本会运行并显示与 Windows 类似的欢迎信息和安装选项:“`
Welcome to Rust!
… (类似的信息,显示 .rustup 和 .cargo 的路径,通常在 $HOME/.rustup 和 $HOME/.cargo) …Current installation options:
default host triple: x86_64-apple-darwin (或类似 Linux 的 triple)
default toolchain: stable (default)
modify PATH variable: yes1) Proceed with installation (default)
2) Customize installation
3) Cancel installation``
1
同样,对于大多数用户,直接按然后回车选择默认安装即可。它会将 Rust 安装到您的 Home 目录下,并尝试更新您的 shell 配置文件(如
.bashrc,
.zshrc,
.profile等)来添加
$HOME/.cargo/bin到
PATH`。 -
步骤 4: 等待安装完成
rustup
会下载并安装 stable 工具链。完成后,会显示成功信息,并提示您需要配置当前 shell 或重启终端:“`
Rust is installed now. Great!To get started you may need to restart your current shell.
This would reload its PATH environment variable to include
Cargo’s bin directory ($HOME/.cargo/bin).To configure your current shell, run:
source “$HOME/.cargo/env”
“` -
步骤 5: 配置当前 Shell 环境
为了让当前终端会话能立即找到 Rust 命令,您可以执行提示中的命令:
bash
source "$HOME/.cargo/env"
或者,更简单的方法是关闭当前终端窗口,然后重新打开一个新的终端窗口。rustup
对 shell 配置文件的修改会在新会话启动时生效。
三、 验证安装
无论您使用的是哪个操作系统,安装完成后,验证 Rust 是否成功安装并添加到 PATH
的方法是相同的。打开一个新的命令行/终端窗口,然后执行以下命令:
bash
rustc --version
如果安装成功,您应该看到类似以下的输出(版本号可能会不同):
rustc 1.78.0 (9b00956e5 2024-04-29)
接着,验证 Cargo(Rust 的包管理器和构建工具)是否也安装成功:
bash
cargo --version
您应该看到类似以下的输出(版本号通常与 rustc
相关联):
cargo 1.78.0 (54d881525 2024-04-08)
如果这两个命令都能正确显示版本信息,那么恭喜您,Rust 开发环境已经成功搭建!如果命令未找到,请回顾之前的步骤,特别是关于 PATH
环境变量配置的部分,确保 $HOME/.cargo/bin
(Linux/macOS)或 C:\Users\YourUsername\.cargo\bin
(Windows)确实在您的系统 PATH
中,并且您正在使用一个新的、已加载该 PATH
的 shell 实例。
四、 理解安装内容:核心组件概览
通过 rustup
安装 Rust 时,您不仅仅是得到了一个编译器,而是获得了一整套开发工具,主要包括:
rustc
(Rust Compiler):这是 Rust 语言的编译器。它负责将您的.rs
源代码文件编译成可执行文件或库。您可以直接使用rustc
来编译简单的单个文件程序,但对于多文件项目,通常会使用 Cargo。cargo
(Package Manager and Build System):Cargo 是 Rust 生态系统的核心。它负责:- 项目管理:创建新的 Rust 项目结构 (
cargo new
,cargo init
)。 - 依赖管理:在
Cargo.toml
文件中声明项目依赖,Cargo 会自动下载、编译和链接这些依赖库(称为 crates)。 - 构建:编译您的项目代码 (
cargo build
)。 - 运行:编译并立即运行您的可执行项目 (
cargo run
)。 - 测试:运行项目中的单元测试和集成测试 (
cargo test
)。 - 发布:将您的库发布到官方的包仓库 Crates.io (
cargo publish
)。
… 以及更多功能。在日常 Rust 开发中,您将主要与cargo
交互。
- 项目管理:创建新的 Rust 项目结构 (
rustup
(Toolchain Manager):就是您刚刚用来安装 Rust 的工具。它允许您管理已安装的 Rust 版本(toolchains)、更新它们、安装不同平台的支持(targets)以及管理可选的组件(components)。- Rust 标准库 (Standard Library):包含了 Rust 核心的数据类型、基本操作、宏、I/O、并发原语等。它会自动链接到您的程序中。
rustdoc
(Documentation Generator):用于为您的 Rust 代码生成 HTML 文档。您也可以用它来查看标准库和已安装依赖库的文档 (rustup doc
)。
五、 管理你的 Rust 环境
rustup
使得管理 Rust 环境变得非常简单:
-
更新 Rust:要将您当前的默认工具链更新到最新的稳定版本,只需运行:
bash
rustup update
rustup
会检查是否有新版本可用,并进行下载和安装。 -
管理工具链 (Toolchains):Rust 有不同的发布渠道:
stable
: 稳定版,推荐用于生产环境。beta
: 测试版,包含即将进入 stable 的功能。nightly
: 每晚构建的版本,包含最新的、实验性的功能,可能不稳定。
您可以安装其他渠道的工具链:
bash
rustup install nightly
rustup install beta
查看已安装的工具链:
bash
rustup toolchain list
切换默认使用的工具链:
bash
rustup default nightly # 将 nightly 设为默认
rustup default stable # 切换回 stable
为特定项目使用特定工具链(在项目目录下):
bash
rustup override set nightly -
管理组件 (Components):安装额外的工具,如:
bash
rustup component add clippy # 添加 Clippy 代码风格检查器
rustup component add rustfmt # 添加 Rustfmt 代码格式化器 -
管理目标平台 (Targets):如果您需要为不同的 CPU 架构或操作系统编译代码(交叉编译),可以添加目标平台支持:
bash
rustup target add wasm32-unknown-unknown # 添加 WebAssembly 目标
六、 卸载 Rust
如果您需要卸载 Rust,rustup
也提供了简单的方法。只需运行:
bash
rustup self uninstall
它会询问您确认,然后移除 .rustup
和 .cargo
目录以及相关的 PATH 配置。
七、 第一个 Rust 程序:”Hello, World!”
现在您的 Rust 环境已经就绪,让我们来创建并运行经典的 “Hello, World!” 程序。
方法一:使用 rustc
直接编译
- 创建文件:在您喜欢的位置创建一个名为
main.rs
的文本文件。 -
编写代码:在
main.rs
文件中输入以下内容:rust
// 这是 main 函数,是所有可执行 Rust 程序的入口点
fn main() {
// println! 是一个宏,用于将文本打印到控制台
println!("Hello, world!");
} -
编译:打开命令行/终端,切换到包含
main.rs
的目录,然后运行:bash
rustc main.rs
如果一切顺利,这会在当前目录下生成一个可执行文件。在 Windows 上,它叫main.exe
;在 macOS 和 Linux 上,它通常叫main
。 -
运行:
- Windows:
./main.exe
或main.exe
- macOS/Linux:
./main
您应该会在终端看到输出:
Hello, world!
- Windows:
方法二:使用 cargo
创建和运行项目 (推荐方式)
对于实际项目,使用 cargo
是标准做法。
-
创建新项目:打开命令行/终端,运行:
bash
cargo new hello_cargo
这会创建一个名为hello_cargo
的新目录,里面包含:
*Cargo.toml
: 项目的配置文件(元数据、依赖等)。
*src/
: 源代码目录。
*src/main.rs
: 自动生成的包含 “Hello, world!” 代码的主文件。 -
进入项目目录:
bash
cd hello_cargo -
构建并运行:使用
cargo run
命令,它会负责编译和执行:bash
cargo run
Cargo 会先编译项目(如果需要),然后在target/debug/
目录下生成可执行文件,并立即运行它。您将同样看到输出:Hello, world!
使用
cargo
的好处在于它能自动处理复杂的项目结构、依赖管理和构建流程,是 Rust 开发的基石。
八、 常见问题与故障排除
- 命令未找到 (Command not found /不是内部或外部命令):最常见的问题是
PATH
环境变量没有正确设置或更新。请确保$HOME/.cargo/bin
(Linux/macOS) 或%USERPROFILE%\.cargo\bin
(Windows) 在PATH
中,并尝试重启终端或计算机。 - 链接器错误 (Linker error / LNKxxxx):尤其是在 Windows 上,这通常意味着 C++ Build Tools (MSVC) 没有正确安装或
rustup
没有找到它。请确保已安装 “C++ build tools” 工作负载,并可能需要重启。 - 网络问题:如果在下载
rustup
或工具链时遇到问题,检查您的网络连接、防火墙或代理设置。 - 权限问题:在 Linux/macOS 上,如果安装脚本或
rustup
命令因权限不足而失败,请检查您对目标目录(通常是$HOME
)是否有写入权限。避免使用sudo
来运行rustup
安装脚本,因为它应该安装在用户目录下。
九、 后续学习资源
安装只是开始,要深入学习 Rust,推荐以下资源:
- 《Rust 程序设计语言》 (The Rust Programming Language Book):官方权威教程,通常称为 “The Book”。它非常详细,适合系统学习。在线阅读:https://doc.rust-lang.org/book/ (也有中文版)。可以通过
rustup doc --book
在本地打开。 - Rust By Example:通过大量可运行的代码示例来学习 Rust 的语法和特性。在线访问:https://doc.rust-lang.org/rust-by-example/。
- Rustlings:一个小练习集,通过修复有小错误的 Rust 代码来巩固基础知识。GitHub: https://github.com/rust-lang/rustlings。
- 官方文档:使用
rustup doc
命令可以在本地浏览器中打开已安装工具链的所有文档,包括标准库 API 文档。 - 社区:Rust 社区非常活跃和友好。可以通过官方论坛 (https://users.rust-lang.org/), Discord 服务器, Reddit (/r/rust) 等途径提问和交流。
结语
恭喜您!通过本教程,您应该已经成功地在您的计算机上安装了 Rust 开发环境,并运行了您的第一个 Rust 程序。我们详细介绍了使用 rustup
在不同操作系统上安装 Rust 的过程,解释了核心组件的作用,并展示了如何管理您的 Rust 环境。
Rust 是一门强大而富有潜力的语言,虽然其所有权和借用等概念可能初看有些挑战,但它们正是 Rust 提供内存安全和高性能的关键。随着您不断学习和实践,您会逐渐体会到 Rust 设计的精妙之处。
现在,您已经准备好深入探索 Rust 的世界了。无论是阅读官方文档、尝试更多示例,还是开始构建您自己的项目,都请保持好奇心和耐心。祝您在 Rust 的学习旅程中一帆风顺,享受编程的乐趣!