rust-lang/cargo

GitHub: rust-lang/cargo

Rust 语言的官方包管理与构建工具,集依赖解析、项目编译、测试运行和 crate 发布于一体。

Stars: 14667 | Forks: 2841

# Cargo Cargo 用于下载 Rust 项目的依赖并编译您的项目。 **想要开始使用 Cargo**,请访问 [The Cargo Book] 了解更多。 **想要参与开发 Cargo 本身**,请阅读 [Cargo Contributor Guide]。 ## 代码状态 [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/7c6fb24988194826.svg)](https://github.com/rust-lang/cargo/actions/workflows/main.yml) 代码文档: ## 从源码编译 ### 要求 编译 Cargo 需要以下工具和包: * `cargo` 和 `rustc` * 一个适用于[您的平台](https://github.com/rust-lang/cc-rs#compile-time-requirements)的 C 编译器 * `git`(用于克隆此仓库) **其他要求:** 以下内容根据您的平台和需求可能是可选的。 * `pkg-config` — 用于帮助定位系统包,例如 `libssl` 头文件/库。在某些情况下可能不需要,例如使用 vendored OpenSSL 时,或者在 Windows 上。 * OpenSSL — 仅在类 Unix 系统上需要,且仅当未使用 `vendored-openssl` Cargo feature 时。 这需要开发头文件,可以从 Ubuntu 上的 `libssl-dev` 包,或通过 apk 或 yum 安装的 `openssl-devel`,或 macOS 上通过 Homebrew 安装的 `openssl` 包获取。 如果使用 `vendored-openssl` Cargo feature,则会从源码构建 OpenSSL 的静态副本,而不是使用系统 OpenSSL。 这可能需要额外的工具,例如 `perl` 和 `make`。 在 macOS 上,将检查 Homebrew、MacPorts 或 pkgsrc 的常见安装目录。否则将回退到 `pkg-config`。 在 Windows 上,将使用系统提供的 Schannel。 同时也支持 LibreSSL。 **可选系统库:** 构建过程将自动使用以下库的 vendored 版本。但是,如果系统提供了这些库且可以通过 `pkg-config` 找到,则会使用系统库: * [`libcurl`](https://curl.se/libcurl/) — 用于网络传输。 * [`libgit2`](https://libgit2.org/) — 用于获取 git 依赖。 * [`libssh2`](https://www.libssh2.org/) — 用于通过 SSH 访问 git 仓库。 * [`libz`](https://zlib.net/) (亦称 zlib) — 上述 C 库使用它进行数据压缩。(Rust 代码则使用 [`zlib-rs`](https://github.com/trifectatechfoundation/zlib-rs)。) 建议使用 vendored 版本,因为它们是经过测试可与 Cargo 配合使用的版本。 ### 编译 首先,您需要检出此仓库 ``` git clone https://github.com/rust-lang/cargo.git cd cargo ``` 在已经安装 `cargo` 的情况下,您只需运行: ``` cargo build --release ``` ## 为 Cargo 添加新的子命令 Cargo 设计为可通过新的子命令进行扩展,而无需修改 Cargo 本身。请参阅 [Wiki 页面][third-party-subcommands] 以了解更多详情以及 已知社区开发的子命令列表。 ## 发布版本 Cargo 的发布与 Rust 的发布同步。 高级发布说明作为 [Rust 发布说明][rel] 的一部分提供。 详细的发布说明可在 [changelog] 中找到。 ## 报告问题 发现了 Bug?我们很希望能知道! 请在 GitHub [issue tracker][issues] 上报告所有问题。 ## 许可证 Cargo 主要根据 MIT 许可证 和 Apache 许可证(2.0 版)的条款进行分发。 有关详细信息,请参阅 [LICENSE-APACHE](LICENSE-APACHE) 和 [LICENSE-MIT](LICENSE-MIT)。 ### 第三方软件 本产品包含由 OpenSSL Project 开发的软件,用于 OpenSSL Toolkit (https://www.openssl.org/)。 在二进制形式下,本产品包含根据 GNU 通用公共许可证(版本 2)条款授权的软件,包含链接例外, 可从 [上游仓库][1] 获取。 有关详细信息,请参阅 [LICENSE-THIRD-PARTY](LICENSE-THIRD-PARTY)。
标签:Cargo, crates.io, DNS解析, Linux 内核安全, Rust, Rustlang, Rust包管理器, 依赖管理, 包管理器, 可视化界面, 安全测试工具, 开源项目, 数据集, 系统编程, 统一API, 编译器, 网络流量审计, 自动化构建, 软件开发, 通知系统, 通知系统, 项目管理