目录
什么是 Cargo
Cargo 是 Rust 的官方构建工具和包管理器,用于创建、管理和构建 Rust 项目。它简化了依赖管理、代码编译和项目发布流程,是 Rust 生态系统的核心组件。
为什么要使用 Cargo
- 项目管理:自动处理项目结构和配置文件。
- 依赖管理:轻松添加和更新外部库。
- 构建效率:提供快速、可靠的编译工具。
- 一致性:确保团队开发环境一致。
- 发布支持:方便将库或二进制文件发布到 crates.io。
Cargo 的安装
Cargo 通常随 Rust 安装一起提供,通过 rustup
自动安装。
- 验证安装:
cargo --version
示例输出:
cargo 1.77.0 (e52e36006 2024-03-11)
- 单独安装(如需要):
- 从 Rust 官网 下载
rustup
,Cargo 会包含在内。
Cargo 基本用法
- 创建新项目:
cargo new my_project
cd my_project
- 生成目录结构:
my_project/ ├── Cargo.toml └── src/ └── main.rs
- 构建项目:
cargo build
- 输出在
target/debug/
。
- 运行项目:
cargo run
- 检查代码:
cargo check
- 快速验证语法,不生成可执行文件。
Cargo.toml 文件详解
Cargo.toml
是项目的配置文件,使用 TOML 格式。
- 基本结构:
[package]
name = "my_project"
version = "0.1.0"
edition = "2021"
[dependencies]
[package]
:定义项目元数据。name
:项目名称。version
:版本号(遵循语义化版本)。edition
:Rust 版本(2015、2018、2021)。- 添加依赖(见下节)。
依赖管理
- 添加依赖:
- 编辑
Cargo.toml
:
[dependencies]
rand = "0.8.5"
- 运行
cargo build
,自动下载并编译rand
库。
- 指定版本:
"0.8.5"
:精确版本。"^0.8"
:兼容 0.8.x。"*"
:最新版本(不推荐)。
- 更新依赖:
cargo update
- 查看依赖树:
cargo tree
构建与运行
- 调试构建:
cargo build
- 发布构建(优化):
cargo build --release
- 输出在
target/release/
。 - 运行特定文件:
cargo run --bin my_binary
- 测试:
- 添加测试代码到
src/lib.rs
或tests/
:
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
- 运行测试:
cargo test
发布与版本管理
- 准备发布:
- 确保
Cargo.toml
中有:toml
[package]
name = “my_crate” version = “0.1.0” license = “MIT” description = “A simple crate”
- 发布到 crates.io:
- 注册账号:https://crates.io/
- 获取 API 令牌并登录:
cargo login
- 发布:
cargo publish
- 版本更新:
- 修改
version
,重新cargo publish
。
参考资料与出站链接
- 官方文档:
- 学习资源:
- 工具与社区:
- crates.io:Rust 包仓库
- Rust 社区论坛
- GitHub – Cargo
发表回复