Skip to content

安装并创建项目

工具链概念

安装 Rust 实际上是安装一套工具链,包含三个核心组件:

组件作用
rustup工具链管理器,负责安装/更新/切换 Rust 版本
rustcRust 编译器,将 .rs 源代码编译成可执行文件
cargo构建工具 + 包管理器,日常开发几乎只和它打交道

实际开发中你几乎不会直接调用 rustc,而是通过 cargo 来管理整个项目的编译、依赖和测试。

安装 Rust 工具链

Linux / macOS:

bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Windows:

  1. 前往 rustup官网 下载并运行安装程序
  2. 安装完成后在终端执行 rustc --version 验证安装成功

VSCode 扩展(推荐安装):

  • rust-analyzer: 提供代码补全、类型推断、错误提示等功能,是 Rust 开发的必备扩展

VsCode 快捷输入技巧

rustup 工具链管理

rustup 是 Rust 的工具链管理器,负责安装、更新和切换 Rust 版本。以下是一些常用的 rustup 命令:

命令说明
rustup update更新到最新稳定版
rustup show查看已安装的工具链
rustup toolchain install nightly安装 nightly 版本
rustup target add wasm32-unknown-unknown添加编译目标(如 WebAssembly)

cargo 创建项目

cargo 是 Rust 的构建工具和包管理器(类似应用商店),提供了丰富的命令来帮助开发者管理项目、依赖和构建流程。

Cargo和Crates.io 章节会详细介绍 Cargo 的使用,这里先介绍如何创建项目:

bash
cargo new hello_rust   # 创建名为 hello_rust 的二进制项目(可执行程序)
cargo new mylib --lib  # 创建名为 mylib 的库项目(--lib 代表创建库项目)

执行 cargo new hello_rust 后会生成以下文件结构:

hello_rust/
├── Cargo.toml    # 项目配置文件(类似 package.json)
└── src/
    └── main.rs   # 程序入口

执行 cargo new mylib --lib 后会生成以下文件结构:

mylib/
├── Cargo.toml    # 项目配置文件
└── src/
    └── lib.rs    # 库入口

Cargo.toml

项目的配置文件,包含项目元信息和依赖列表:

toml
[package]
name = "hello_rust"    # 项目名
version = "0.1.0"      # 版本号
edition = "2024"       # Rust 版本

[dependencies]
# 在这里添加依赖
  1. edition 表示使用的 Rust 语法版本,此教程使用 2024 版本,支持最新的语言特性
  2. 添加依赖推荐使用 cargo add <crate-name> 命令,会自动写入此文件

src/main.rs

二进制项目的默认入口文件是 src/main.rs,库项目则是 src/lib.rs

rust
fn main() {
    // 打印 "Hello, world!" 到控制台
    println!("Hello, world!");
}
rust
// src/lib.rs 是一个库项目的入口文件,通常用于定义公共接口
pub fn greet() {
    println!("Hello from the library!");
}

main 函数是 src/main.rs 文件中程序的起点,程序从这里开始执行。

cargo 常用命令

构建与运行

命令说明
cargo run / cargo r编译并运行(Debug 模式)
cargo run --release编译并运行(Release 模式,开启优化)
cargo build仅编译,不运行
cargo build --release编译 Release 版本
cargo check只做语法检查,不生成可执行文件,速度更快

Debug 和 Release 的区别:

  • Debug: 编译快,包含调试信息,运行慢;开发阶段默认使用
  • Release: 编译慢,开启优化,运行快;发布时使用

开发时用 cargo run,发布时用 cargo build --release

依赖管理

命令说明
cargo add <crate-name>添加依赖(自动写入 Cargo.toml,推荐使用)
cargo update更新所有依赖到最新兼容版本
cargo tree查看依赖树,排查依赖冲突

代码质量

命令说明
cargo fmt格式化代码(使用官方 rustfmt)
cargo clippyLint 检查,给出代码质量建议(比编译器提示更丰富)
cargo doc --open生成并在浏览器中打开项目文档
cargo doc --open --document-private-items生成包含私有项的文档

其他命令

命令说明
cargo test运行单元测试(详见自动化测试)
cargo clean清理构建产物(删除 target/ 目录)
cargo publish发布到 crates.io
cargo --help查看帮助信息

基于 MIT 协议发布