Rust Cargo具有--target-dir
标志,该标志指定用于存储临时或缓存的构建工件的目录。您也可以在~/.cargo/config
文件中进行设置以在整个用户范围内进行设置。
将所有项目的单个目录用作--target-dir
是否可以?
我看到一些工件目录在目标目录中带有一些唯一的(?)散列后缀,看起来很安全,但是最终产品没有以散列为后缀,而且名称冲突似乎也不安全。我不确定,因为我不是货运系统的专家。
如果可以,我将其设置为单个目录以简化维护。
更新
我尝试将~/.cargo/config
设置为
[build]
target-dir = "./.build"
到目前为止,它已经与多个不同的项目进行了很好的合作。但是,仅处理几个样本并不意味着它已被设计或保证可用于每种情况。
就我而言,我正在使用用户的所有项目的单个共享构建目录。不仅在工作区中投影。从字面上看,每个项目都在用户的每个工作区中。 AFAIK,cargo
设计为与本地target
目录配合使用。如果旨在仅使用本地目录,则共享的构建目录可能会引起一些问题。我不知道它是如何工作的,因此,向有经验的人询问它如何与共享构建目录一起工作。
我不确定我是否理解你的最终目标。做个假设,我建议您看一下Rust Book部分:Rust Book - Cargo workspace
可以找您吗?
[还有(可能)有一个类似的问题:StackOverflow - Cargo related question
[Rust Cargo Book也可能有帮助。