使用Cargo,我可以设置项目的开发设置以使用并行代码生成:
[profile.dev]
codegen-units = 8
根据the documentation,应该可以将其放入~/.cargo/config
以将此设置应用于所有项目。这对我不起作用:似乎.cargo/config
文件根本没用过。有没有办法将这样的配置应用于我编译的每个项目?
答案 0 :(得分:3)
您可以在.cargo/config
文件中为所有版本或每个目标设置防锈标记。
[build] # or [target.$triple]
rustflags = ["-Ccodegen-units=4"]
要明确的是,这将为您的所有项目设置codegen-units(由此.cargo / config覆盖),无论配置文件如何。
要确保实际设置,您还可以在同一文件中设置详细输出。这将显示每个rustc命令,其中包含货物调用的标志。
[term]
verbose = true
答案 1 :(得分:2)
解决方法是创建一个要调用的脚本而不是cargo
#!/bin/bash
if [[ $* != *--release* ]]; then
# dev build
export RUSTFLAGS="-C codegen-units=8"
fi
cargo "$@"
如果您在脚本上使用cargo
的完整路径,则可以创建别名
alias cargo=/path/to/script
然后致电cargo
。