Error code E0463

A crate was declared but cannot be found.

Erroneous code example:

fn main() {
extern crate foo; // error: can't find crate

You need to link your code to the relevant crate in order to be able to use it (through Cargo or the -L option of rustc, for example).

Common causes

  • The crate is not present at all. If using Cargo, add it to [dependencies] in Cargo.toml.
  • The crate is present, but under a different name. If using Cargo, look for package = under [dependencies] in Cargo.toml.

Common causes for missing std or core

  • You are cross-compiling for a target which doesn't have std prepackaged. Consider one of the following:
    • Adding a pre-compiled version of std with rustup target add
    • Building std from source with cargo build -Z build-std
    • Using #![no_std] at the crate root, so you won't need std in the first place.
  • You are developing the compiler itself and haven't built libstd from source. You can usually build it with build library/std. More information about is available in the rustc-dev-guide.