一.Cargo 是什么
Cargo 是 Rust 的官方构建系统和包管理器。它负责管理 Rust 项目的依赖项、构建项目以及管理项目的配置。
二.Cargo教程
要使用 Cargo 创建一个新的 Rust 项目,请使用cargo new
cargo new hello_cargo
这一行命令新建了名为 hello_cargo 的目录和项目。我们将项目命名为 hello_cargo,同时 Cargo 在一个同名目录中创建项目文件。
进入目录,将会看到 Cargo 生成了两个文件和一个目录:一个 Cargo.toml 文件,一个 src 目录,以及位于 src 目录中的 main.rs 文件。
Cargo.toml文件
这个 Cargo 文件描述了一个 Rust 项目的元数据和依赖项。下面是对文件内容的解析:
1.[package]
是一个片段(section)标题,表示接下来的内容是关于项目包的配置。
name = "hello_cargo"
:指定了项目的名称为 “hello_cargo”version = "0.1.0"
:指定了项目的版本号为 “0.1.0”。edition = "2021"
:指定了 Rust 编译器所使用的 Edition(版本),这里是 2021 Edition。
2.[dependencies]
部分:
这个部分通常用于列出项目所依赖的外部库。Cargo 文件还可以包含其他部分,比如 [workspace]
、[profile]
等,用于配置工作空间和编译器参数等。这些部分不是必需的,取决于项目的需要。
src/main.rs 文件
fn main() {
println!("Hello, world!");
}
这段 Rust 代码定义了一个程序的入口点(main 函数),并在控制台打印 “Hello, world!” 消息。
构建并运行Cargo项目
cargo build
具体而言,cargo build
命令的含义是:
1.编译项目代码:Cargo 会根据项目根目录下的 Cargo.toml
文件中的配置信息,编译整个 Rust 项目的源代码。
2.生成可执行文件或库:根据项目类型(可执行程序或库),Cargo 会生成对应的可执行文件(通常在 target/debug
目录下)或者库文件(通常在 target/debug
目录下),这取决于项目的配置和 Cargo.toml 文件中的指定。
3.处理依赖关系:如果项目依赖了其他的 Rust crate(包),Cargo 会自动下载并编译这些依赖,以确保项目的所有依赖都被正确处理和链接。
4.检查代码:Cargo 会在编译过程中执行各种检查,包括语法检查、类型检查、错误检查等,以确保代码的质量和正确性。
我们也可以使用编译然后运行它,所有这些都在一个步骤中完成:cargo run