OS Manuals

/usr/bin/rustc

Empowering everyone to build reliable and efficient software.

From rust-1.86 1.86.0-r3 (os), captured 2026-11-05 by running rustc --help (exit 0). permalink

Usage: rustc [OPTIONS] INPUT

Options:
    -h, --help          Display this message
        --cfg SPEC      Configure the compilation environment.
                        SPEC supports the syntax `NAME[="VALUE"]`.
        --check-cfg SPEC
                        Provide list of expected cfgs for checking
    -L [KIND=]PATH      Add a directory to the library search path. The
                        optional KIND can be one of dependency, crate, native,
                        framework, or all (the default).
    -l [KIND[:MODIFIERS]=]NAME[:RENAME]
                        Link the generated crate(s) to the specified native
                        library NAME. The optional KIND can be one of
                        static, framework, or dylib (the default).
                        Optional comma separated MODIFIERS
                        (bundle|verbatim|whole-archive|as-needed)
                        may be specified each with a prefix of either '+' to
                        enable or '-' to disable.
        --crate-type [bin|lib|rlib|dylib|cdylib|staticlib|proc-macro]
                        Comma separated list of types of crates
                        for the compiler to emit
        --crate-name NAME
                        Specify the name of the crate being built
        --edition 2015|2018|2021|2024
                        Specify which edition of the compiler to use when
                        compiling code. The default is 2015 and the latest
                        stable edition is 2024.
        --emit [asm|llvm-bc|llvm-ir|obj|metadata|link|dep-info|mir]
                        Comma separated list of types of output for the
                        compiler to emit
        --print [crate-name|file-names|sysroot|target-libdir|cfg|check-cfg|calling-conventions|target-list|target-cpus|target-features|relocation-models|code-models|tls-models|target-spec-json|all-target-specs-json|native-static-libs|stack-protector-strategies|link-args|deployment-target]
                        Compiler information to print on stdout
    -g                  Equivalent to -C debuginfo=2
    -O                  Equivalent to -C opt-level=3
    -o FILENAME         Write output to <filename>
        --out-dir DIR   Write output to compiler-chosen filename in <dir>
        --explain OPT   Provide a detailed explanation of an error message
        --test          Build a test harness
        --target TARGET Target triple for which the code is compiled
    -A, --allow LINT    Set lint allowed
    -W, --warn LINT     Set lint warnings
        --force-warn LINT
                        Set lint force-warn
    -D, --deny LINT     Set lint denied
    -F, --forbid LINT   Set lint forbidden
        --cap-lints LEVEL
                        Set the most restrictive lint level. More restrictive
                        lints are capped at this level
    -C, --codegen OPT[=VALUE]
                        Set a codegen option
    -V, --version       Print version info and exit
    -v, --verbose       Use verbose output

Additional help:
    -C help             Print codegen options
    -W help             Print 'lint' options and default settings
    --help -v           Print the full set of options rustc accepts
Options (25)
OptionDescriptionSource
-h, --helpDisplay this messagehelp
--cfg SPECConfigure the compilation environment.help
--check-cfg SPECProvide list of expected cfgs for checkinghelp
-L KIND=]PATHAdd a directory to the library search path.help
-l KIND[:MODIFIERS]=]NAME[:RENAMELink the generated crate(s) to the specified native library NAME.help
--crate-typeComma separated list of types of crates for the compiler to emithelp
--crate-name NAMESpecify the name of the crate being builthelp
--edition 2015|2018|2021|2024Specify which edition of the compiler to use when compiling code.help
--emitComma separated list of types of output for the compiler to emithelp
--printCompiler information to print on stdouthelp
-gEquivalent to -C debuginfo=2help
-OEquivalent to -C opt-level=3help
-o FILENAMEWrite output to <filename>help
--out-dir DIRWrite output to compiler-chosen filename in <dir>help
--explain OPTProvide a detailed explanation of an error messagehelp
--testBuild a test harnesshelp
-A, --allow LINTSet lint allowedhelp
-W, --warn LINTSet lint warningshelp
--force-warn LINTSet lint force-warnhelp
-D, --deny LINTSet lint deniedhelp
-F, --forbid LINTSet lint forbiddenhelp
--cap-lints LEVELSet the most restrictive lint level.help
-C, --codegen OPT[=VALUESet a codegen optionhelp
-V, --versionPrint version info and exithelp
-v, --verboseUse verbose outputhelp

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.