5 ms·
With [2018], rust has gone on the path of tightly integrating the build system into the language. Before, you had to declare the crates you were using with "ext
by Tuna-Fish 8y ago
With [2018], rust has gone on the path of tightly integrating the build system into the language. Before, you had to declare the crates you were using with "extern crate" in your main package. Now, the only place those are found is in the Cargo.toml build script. The language version is chosen in the same place.
- steveklabnik 8y agoThis imposes no additional requirements on rustc, it’s the same as it previously was. Cargo is no more tightly integrated.
- gpm 8y agoThis makes using rustc without cargo much harder. For instance, previously I could `rustc src/main.rs -L deps` and assuming that the dependencies had all been built and had their rlibs put in deps things would just work. Now that is no longer possible, I have to manually specify every external dependency on the command line.
- kibwen 8y ago`extern crate` hasn't been made a syntax error, it's just now possible to elide it. There are plenty of use cases where I imagine people will still use it, not least of which is play.rust-lang.org, which has no direct access to Cargo or rustc, and `extern crate` is what one will continue to use to import third-party libraries there.