我正在检查the build script documentation,想知道是否可以从命令行将任何参数传递给build.rs
中的脚本。
fn main() {
let args: Vec<String> = env::args().collect();
let var = &args[1];
}
在构建脚本中可以进行类似的工作吗?以及如何从命令行指定参数?
答案 0 :(得分:3)
否。
文档建议使用环境变量将数据传递到构建脚本。
没有文档表明可以完成,the test suite does not test for it。它仅测试environment variables。
我尝试了@Stephan从Passing program arguments through Cargo建议的方法,但是cargo build
的行为与cargo run
相同:
$ cargo build -- uoeuoe
error: Found argument 'uoeuoe' which wasn't expected, or isn't valid in this context
USAGE:
cargo.exe build [OPTIONS]
For more information try --help