I am creating a library with Rust. On library creation I type
cargo new name
According to the docs this should create a lib, because --bin
is omitted.
However, the file is auto set to a binary.
Is there a setting I have to adjust to disable auto setting all projects to binary?
Cargo features
Cargo’s CLI has one really important change this release:
cargo new
will now default to generating a binary, rather than a library. We try to keep Cargo’s CLI quite stable, but this change is important, and is unlikely to cause breakage.For some background,
cargo new
accepts two flags:--lib
, for creating libraries, and--bin
, for creating binaries, or executables. If you don’t pass one of these flags, in previous versions of Cargo, it would default to--lib
. We made this decision because each binary (often) depends on many libraries, and so the library case is more common. However, this is incorrect; each library is depended upon by many binaries. Furthermore, when getting started, what you often want is a program you can run and play around with. It’s not just new Rustaceans though; even very long-time community members have said that they find this default surprising. As such, we’re changing it.
Source
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With