]> git.proxmox.com Git - cargo.git/blob - README.md
Auto merge of #10468 - weihanglo:contrib-doc-refine, r=ehuss
[cargo.git] / README.md
1 # Cargo
2
3 Cargo downloads your Rust project’s dependencies and compiles your project.
4
5 **To start using Cargo**, learn more at [The Cargo Book].
6
7 **To start developing Cargo itself**, read the [Cargo Contributor Guide].
8
9 [The Cargo Book]: https://doc.rust-lang.org/cargo/
10 [Cargo Contributor Guide]: https://rust-lang.github.io/cargo/contrib/
11
12 ## Code Status
13
14 [![CI](https://github.com/rust-lang/cargo/actions/workflows/main.yml/badge.svg?branch=auto-cargo)](https://github.com/rust-lang/cargo/actions/workflows/main.yml)
15
16 Code documentation: https://docs.rs/cargo/
17
18 ## Installing Cargo
19
20 Cargo is distributed by default with Rust, so if you've got `rustc` installed
21 locally you probably also have `cargo` installed locally.
22
23 ## Compiling from Source
24
25 Cargo requires the following tools and packages to build:
26
27 * `git`
28 * `curl` (on Unix)
29 * `pkg-config` (on Unix, used to figure out the `libssl` headers/libraries)
30 * OpenSSL headers (only for Unix, this is the `libssl-dev` package on ubuntu)
31 * `cargo` and `rustc`
32
33 First, you'll want to check out this repository
34
35 ```
36 git clone https://github.com/rust-lang/cargo
37 cd cargo
38 ```
39
40 With `cargo` already installed, you can simply run:
41
42 ```
43 cargo build --release
44 ```
45
46 ## Adding new subcommands to Cargo
47
48 Cargo is designed to be extensible with new subcommands without having to modify
49 Cargo itself. See [the Wiki page][third-party-subcommands] for more details and
50 a list of known community-developed subcommands.
51
52 [third-party-subcommands]: https://github.com/rust-lang/cargo/wiki/Third-party-cargo-subcommands
53
54
55 ## Releases
56
57 Cargo releases coincide with Rust releases.
58 High level release notes are available as part of [Rust's release notes][rel].
59 Detailed release notes are available in this repo at [CHANGELOG.md].
60
61 [rel]: https://github.com/rust-lang/rust/blob/master/RELEASES.md
62 [CHANGELOG.md]: CHANGELOG.md
63
64 ## Reporting issues
65
66 Found a bug? We'd love to know about it!
67
68 Please report all issues on the GitHub [issue tracker][issues].
69
70 [issues]: https://github.com/rust-lang/cargo/issues
71
72 ## Contributing
73
74 See the **[Cargo Contributor Guide]** for a complete introduction
75 to contributing to Cargo.
76
77 ## License
78
79 Cargo is primarily distributed under the terms of both the MIT license
80 and the Apache License (Version 2.0).
81
82 See [LICENSE-APACHE](LICENSE-APACHE) and [LICENSE-MIT](LICENSE-MIT) for details.
83
84 ### Third party software
85
86 This product includes software developed by the OpenSSL Project
87 for use in the OpenSSL Toolkit (https://www.openssl.org/).
88
89 In binary form, this product includes software that is licensed under the
90 terms of the GNU General Public License, version 2, with a linking exception,
91 which can be obtained from the [upstream repository][1].
92
93 See [LICENSE-THIRD-PARTY](LICENSE-THIRD-PARTY) for details.
94
95 [1]: https://github.com/libgit2/libgit2
96