【问题标题】:How can I specify a custom Cargo output directory?如何指定自定义 Cargo 输出目录?
【发布时间】:2018-05-16 07:05:07
【问题描述】:

我把它放在我的 Cargo.toml 中

[build]
target-dir = "../my-target"

但是,Cargo 无法识别此密钥。

cargo run --release --bin my_project

warning: unused manifest key: build
error: failed to open: /.../project-root/target/releases/.cargo-lock

Caused by:
  Permission denied (os error 13)

带有环境变量的自定义目标目录有效:

CARGO_TARGET_DIR=../my-target cargo run --bin my_project

但是如何在 Cargo.toml 中指定“../my-target”?

【问题讨论】:

  • 默认目录在哪里,我找不到cargo的构建输出

标签: rust rust-cargo


【解决方案1】:

[build]Cargo-level configuration 而不是项目:

本文档将解释 Cargo 的配置系统如何工作,以及可用的密钥或配置。有关通过其清单配置项目,请参阅清单格式。

将您的[build] 放入$PROJECT_DIR/.cargo/config 甚至$HOME/.cargo/config。有关所有选项,请参见上面的链接。

【讨论】:

    【解决方案2】:

    使用CARGO_TARGET_DIR environment variable

    CARGO_TARGET_DIR=../my-target cargo run --bin my_project
    

    (这在问题中有所说明,但我想为跳过该问题的任何人强调它)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-30
      • 2012-01-29
      • 2011-02-24
      • 1970-01-01
      • 2011-04-14
      • 1970-01-01
      相关资源
      最近更新 更多