如何全局配置货物配置文件选项?

时间:2015-08-15 21:22:35

标签: rust rust-cargo

使用Cargo,我可以设置项目的开发设置以使用并行代码生成:

[profile.dev]
codegen-units = 8

根据the documentation,应该可以将其放入~/.cargo/config以将此设置应用于所有项目。这对我不起作用:似乎.cargo/config文件根本没用过。有没有办法将这样的配置应用于我编译的每个项目?

2 个答案:

答案 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