Error installing a crate via cargo: specified package has no binaries

cargo install is used to install binary packages that happen to be distributed through crates.io.

If you want to use a crate as a dependency, add it to your Cargo.toml.

Read the Rust getting started guide and the Cargo getting started guide for further information. In short:

cargo new my_project
cd my_project
echo 'curl = "0.3.0"' >> Cargo.toml

Amusingly, you can install a third-party Cargo subcommand called cargo-edit using cargo install that makes it easier to modify your Cargo.toml file to add and remove dependencies!

cargo install cargo-edit
cargo add curl
cargo rm curl

An important thing to note is that every Cargo project manages and compiles a separate set of dependencies (some background info). Thus it doesn’t make sense to install a compiled library. The source code for each version of a library will be cached locally, avoiding downloading it multiple times.

See also:

Leave a Comment