第三回:粮草先行,Cargo 大总管
Rust 的编译器 rustc 就像是打铁的锤子,虽然好用,但如果你要造一艘船(大型项目),光有锤子可不行。你需要 Cargo。
Cargo 是 Rust 的构建系统和包管理器。它能帮你:
- 📦 创建项目(盖新房)
- 🚚 下载依赖(进货)
- 🏗️ 编译代码(施工)
1. 创建新项目 (开宗立派)
不要再手动建文件了,让 Cargo 帮你搞定:
cargo new hello_world
cd hello_world
你会发现它自动生成了:
Cargo.toml:粮草清单(配置文件)。src/main.rs:练功房(源代码)。
2. 编译与运行 (操练起来)
在项目目录里,你可以发号施令:
cargo build:
只编译,不运行。生成的执行文件在 target/debug/ 下。适合平时练兵。
cargo run:
编译并立刻运行。一气呵成,最常用的命令!
cargo check:
只检查代码有没有错,不生成文件。速度极快,适合吵架(写代码)时随时检查逻辑漏洞。
我想要发布我的绝世文章,让全天下人都看到,该怎么办?用 Debug 模式会被人笑话慢的!
算你还有点羞耻心!要发布,就用 Release 模式!
3. 发布构建 (正式出征)
当你准备好上擂台了,记得加上 --release:
cargo build --release
这会让编译器火力全开进行优化(虽然编译慢点),生成的程序跑得比常威逃跑还快!
4. 粮草清单详解 (Cargo.toml)
打开你的 Cargo.toml,这可是我们的账本,不能马虎:
[package]
name = "yamun" # 项目名称
version = "0.1.0" # 版本号
edition = "2021" # Rust 版本 (2015/2018/2021)
authors = ["包龙星 "] # 作者 (可选)
[dependencies]
# 在这里列出你的援军 (依赖库)
rand = "0.8.5" # 比如生成随机数
serde = { version = "1.0", features = ["derive"] } # 复杂点的写法
关键属性说明:
name: 你的项目大名,发布到 crates.io 时不能和别人重名。version: 遵循语义化版本 (Major.Minor.Patch)。dependencies: 左边是库名,右边是版本号。Cargo 会自动去 crates.io 找这些库。
动手时刻:Cargo 初体验
请在你的命令行里执行以下操作,假装你正在筹备一个新的衙门:
cargo new yamun(创建衙门)cd yamun(进入衙门)cargo run(升堂!)
如果你看到了 "Hello, world!",说明衙门已经开张了!