tldr/pages/common/rustc.md

885 B

rustc

The Rust compiler. Rust projects usually use cargo instead of invoking rustc directly. More information: https://doc.rust-lang.org/rustc.

  • Compile a binary crate:

rustc {{path/to/main.rs}}

  • Compile with optimizations (s means optimize for binary size; z is the same with even more optimizations):

rustc -C lto -C opt-level={{0|1|2|3|s|z}} {{path/to/main.rs}}

  • Compile with debugging information:

rustc -g {{path/to/main.rs}}

  • Explain an error message:

rustc --explain {{error_code}}

  • Compile with architecture-specific optimizations for the current CPU:

rustc -C target-cpu={{native}} {{path/to/main.rs}}

  • Display the target list (Note: you have to add a target using rustup first to be able to compile for it):

rustc --print target-list

  • Compile for a specific target:

rustc --target {{target_triple}} {{path/to/main.rs}}