gpt4 book ai didi

Rust Cargo 为特定 CPU 构建和交叉编译

转载 作者:行者123 更新时间:2023-12-03 11:37:00 26 4
gpt4 key购买 nike

我想为不同的目标架构(例如 Skylake 和 Sandy Bridge)编译两个二进制文件。这些通常是两个冗长的 cargo 命令:

RUSTFLAGS="-C target-cpu=skylake" cargo build --targetx86_64-unknown-linux-gnu --release

我如何设置 cargo 以从同一个 main.rs 自动构建两个二进制文件(具有不同的名称)?理想情况下在 config.tomlCargo.toml 中,这样我就可以将它添加到存储库中。

最佳答案

您可以将以下文本添加到您的config.toml:

[build]
target = x86_64-unknown-linux-gnu
rustflags = ["-C","target-cpu=skylake"]

[profile.dev] #do not need to add `--release` now
opt-level = 3
debug = false
debug-assertions = false
overflow-checks = false
lto = false
panic = 'unwind'
incremental = false
codegen-units = 16
rpath = false

但它似乎不能用一个 config.toml 为两个不同的目标架构编译,所以你可能必须创建两个 config.toml 并使用 cargo --manifest-path PATH/TO/CONFIG 分别编译两个二进制文件。

关于Rust Cargo 为特定 CPU 构建和交叉编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63828264/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com