我曾经使用CMake,对于鼓励使用外部构建的CMake,我已经习惯了它。 那么如何使用Cargo进行外部构建呢?
再次使用内部构建感觉像是退步:
- 需要配置开发工具以忽略路径。有时候需要使用多个插件和开发工具,特别是在使用VIM或Emacs时。
- 有些工具无法轻松地隐藏构建文件。虽然点文件通常是隐藏的,但它们仍然会显示
Cargo.lock
和target/
,更糟糕的是,递归地暴露它们的内容。 - 删除未跟踪的文件以删除版本控制之外的一切内容,通常是为了清理编辑器临时文件或某些测试输出,如果你忘记将新文件添加到版本控制中并且在删除文件之前没有手动检查文件列表,则可能会出现问题。
- 依赖项被下载到您的源代码路径中,有时作为构建间接依赖项的一部分,在
target
目录中添加*.rs
文件,因此对所有*.rs
文件进行操作可能会意外地捕捉到其他不在隐藏目录中的文件,因此即使配置了开发工具,也可能不会被忽略。
虽然可以解决所有这些问题,但我宁愿有一个外部构建路径并保持源目录清洁。