cargorust-cargo95% confidence\u2191 53

failed to parse manifest - no targets specified

Full error message
I am new to Rust and attempting to build a test project with Cargo. My Cargo.toml looks like:

[package]
name = "rust-play"
version = "0.0.1"
authors = [ "Bradley Wogsland <omitted>" ]

(but the actual TOML file doesn't omit my email). When I cargo build I am getting the following error:

  error: failed to parse manifest at /Users/wogsland/Projects/rust-play/Cargo.toml

  
  Caused by:
    no targets specified in the manifest
    either src/lib.rs, src/main.rs, a [lib] section, or [[bin]] section must be present

My main function is in a src/test.rs file. Do I need to specify that in the TOML file? If so, how? I tried adding

target = "src/test.rs"

to no avail.

As the error says: either src/lib.rs, src/main.rs, a [lib] section, or [[bin]] section must be present So the direct answer is to add a [[bin]] section: [[bin]] name = "test" path = "src/test.rs" However, it's far more usual to just place the file in the expected location: src/main.rs. You could also place it in src/bin/test.rs if you plan on having multiple binaries. If it's actually for testing your code, then unit tests go in the same file as the code they are testing and integration tests go in tests/foo.rs.

API access

Get this solution programmatically \u2014 free, no authentication.

curl https://depscope.dev/api/error/fb2772b16af7a482dfa34acd10ee011d1993307c1d0f67203aa32765f2d4124a
hash \u00b7 fb2772b16af7a482dfa34acd10ee011d1993307c1d0f67203aa32765f2d4124a
failed to parse manifest - no targets specified — DepScope fix | DepScope