Cargo 是 Rust 的官方包管理器和构建工具,它简化了项目的创建、依赖管理和编译过程。通过 Cargo,你可以轻松管理 Rust 项目,从简单的脚本到复杂的应用程序。

安装和验证 Cargo

当你安装 Rust 时,Cargo 通常会自动包含在内。要检查 Cargo 是否已安装,可以在终端中运行以下命令:

cargo --version
cargo 1.70.0 (ec8a8a0ca 2023-04-25)

如果看到类似上面的版本输出,说明 Cargo 已正确安装。

创建新项目

使用 Cargo 创建新项目非常简单。运行以下命令来创建一个名为 my_project 的新项目:

cargo new my_project

这会在当前目录下生成一个名为 my_project 的文件夹,包含基本的项目结构。进入项目目录并查看文件:

cd my_project
ls -la
Cargo.toml
src/
.gitignore

关键文件包括:

  • Cargo.toml:项目的配置文件,用于定义元数据和依赖。
  • src/main.rs:主程序文件,包含一个简单的 Hello, world! 示例。

理解 Cargo.toml 文件

Cargo.toml 是 Cargo 项目的核心配置文件。打开它,你会看到类似以下内容:

[package]
name = "my_project"
version = "0.1.0"
edition = "2021"

[dependencies]

这个文件使用 TOML 格式,其中:

  • [package] 部分定义了项目的基本信息,如名称、版本和 Rust 版本。
  • [dependencies] 部分用于列出项目依赖的包。

注意edition 字段指定了 Rust 的版本,如 2021,这会影响语言特性和兼容性。

添加和管理依赖

要在项目中添加依赖,只需在 Cargo.toml[dependencies] 部分指定包名和版本。例如,添加一个流行的日志库 log

[dependencies]
log = "0.4"

然后运行 cargo build 来下载和编译依赖:

cargo build

Cargo 会自动从 crates.io 下载包并处理版本解析。你可以在代码中使用依赖,例如:

use log::{info, warn};

fn main() {
    info!("Application started");
    warn!("This is a warning message");
}

构建和运行项目

Cargo 提供了几个常用命令来构建和运行项目。要编译项目,使用:

cargo build

这会在 target/debug 目录下生成可执行文件。要直接运行项目,使用:

cargo run
Hello, world!

对于发布构建,添加 --release 标志以优化性能:

cargo build --release
cargo run --release

常用 Cargo 命令参考

下表总结了 Cargo 的基本命令及其用途:

命令 描述
cargo new 创建新项目
cargo build 编译项目
cargo run 编译并运行项目
cargo check 快速检查代码错误
cargo test 运行测试
cargo update 更新依赖版本

注意:在修改 Cargo.toml 后,记得运行 cargo buildcargo update 来应用更改,否则依赖可能不会生效。

项目结构

一个典型的 Cargo 项目结构如下:

my_project/
├── Cargo.toml
├── src/
│   ├── main.rs
│   └── lib.rs (可选)
├── target/
└── .gitignore