Running cargo bench results in an "Unrecognized Option" error
For
cargo bench -- --some-valid-arg
to work you can either specify the
benchmark with --bench BENCHMARK
, for example
cargo bench --bench my_gungraun_benchmark -- --callgrind-args="--collect-bus=yes"
or add the following to your Cargo.toml
:
[lib]
bench = false
and if you have binaries
[[bin]]
name = "my-binary"
path = "src/bin/my-binary.rs"
bench = false
Setting bench = false
disables the creation of the implicit default libtest
harness which is added even if you haven't used #[bench]
functions in your
library or binary. Naturally, the default harness doesn't know of the
Gungraun arguments and aborts execution printing the Unrecognized Option
error.
If you cannot or don't want to add bench = false
to your Cargo.toml
, you can
alternatively use environment variables. For every command-line
argument exists a corresponding environment variable.