1 个不稳定版本
0.1.0 | 2022年12月9日 |
---|
#29 在 #贡献者
2KB
Cargo
Cargo 下载您的 Rust 项目的依赖项并编译您的项目。
要开始使用 Cargo,请了解更多信息《Cargo 书籍》。
要开始开发 Cargo 本身,请阅读《Cargo 贡献者指南》。
代码状态
代码文档: https://doc.rust-lang.net.cn/nightly/nightly-rustc/cargo/
安装 Cargo
Cargo 默认与 Rust 一起分发,所以如果您已本地安装了 rustc
,您可能也已本地安装了 cargo
。
从源码编译
需求
Cargo 需要以下工具和软件包进行构建
cargo
和rustc
- 适用于您平台的 C 编译器 (编译时要求)
git
(克隆此存储库)
其他需求
以下基于您的平台和需求是可选的。
-
pkg-config
— 这用于帮助定位系统软件包,例如libssl
头文件/库。在某些情况下可能不需要,例如使用 vendored OpenSSL 或在 Windows 上。 -
OpenSSL — 仅在类 Unix 系统上需要,并且仅在未使用
vendored-openssl
Cargo 功能的情况下需要。这需要开发头文件,可以从 Ubuntu 的
libssl-dev
软件包或 macOS 上的openssl-devel
(通过 apk 或 yum)或 Homebrew 上的openssl
软件包获取。如果使用
vendored-openssl
Cargo 功能,则将从源代码构建 OpenSSL 的静态副本,而不是使用系统 OpenSSL。这可能需要额外的工具,例如perl
和make
。在 macOS 上,将检查 Homebrew、MacPorts 或 pkgsrc 的常用安装目录。否则将回退到
pkg-config
。在 Windows 上,将使用系统提供的 Schannel。
还支持 LibreSSL。
可选的系统库
构建将自动使用以下库的 vendored 版本。但是,如果它们由系统提供并且可以通过 pkg-config
找到,则将使用系统库
建议使用 vendored 版本,因为它们是与 Cargo 测试过兼容的版本。
编译
首先,您需要检出此存储库
git clone https://github.com/rust-lang/cargo.git
cd cargo
在已安装 cargo
的情况下,您可以直接运行
cargo build --release
向 Cargo 添加新子命令
Cargo 被设计为可以通过新子命令进行扩展,而无需修改 Cargo 本身。有关更多详细信息以及已知社区开发的子命令列表,请参阅 Wiki 页面。
版本
Cargo 版本与 Rust 版本一致。高级版本说明作为 Rust 版本说明的一部分提供,可以在 Rust 的版本说明 中找到。详细的版本说明可以在本存储库中的 CHANGELOG.md 中找到。
报告问题
发现了一个错误?我们很想了解它!
请将所有问题报告到 GitHub 问题跟踪器。
贡献
有关如何向 Cargo 贡献的完整介绍,请参阅 Cargo 贡献指南。
许可
Cargo 主要根据 MIT 许可证和 Apache 许可证(版本 2.0)的条款进行分发。
有关详细信息,请参阅 LICENSE-APACHE 和 LICENSE-MIT。
第三方软件
此产品包括 OpenSSL 项目为在 OpenSSL 工具包中使用而开发的软件(https://www.openssl.org/)。
在二进制形式中,此产品包括根据 GNU 通用公共许可证(版本 2)的条款许可的软件,具有链接例外条款,可以从 上游存储库 获取。
有关详细信息,请参阅 LICENSE-THIRD-PARTY。