构建脚本能否接受参数?

3

我在阅读构建脚本文档时,想知道我是否可以从命令行向build.rs脚本传递任何参数。

fn main() {
    let args: Vec<String> = env::args().collect();
    let var = &args[1];
}

在构建脚本中,是否可以使用这样的东西?我该如何从命令行指定参数?

1个回答

8

编号。

文档建议使用环境变量将数据传递给构建脚本。

没有文档表明它可以完成,并且测试套件没有对其进行测试。它只测试环境变量

我尝试了@Stephan在通过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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接