具有库+多个二进制文件的货物项目,其中二进制文件由多个文件组成?

4 rust rust-cargo

Cargo 书描述了如何在单个 Cargo 项目中拥有一个库和多个可执行文件。

我想要一个由多个源文件组成的可执行文件,这些源文件特定于该可执行文件而不是在库中。

例如

  • 库本身中的 src/lib1.rs、src/lib2.rs、src/lib3.rs,
  • src/bin/exe1.rs + exe1 可执行文件的另一个特定于 exe1 的源文件。

我应该将最后一个源文件放在哪里,以便它不会编译到库中,而是编译到可执行文件中?

Kev*_*eid 8

Cargo 支持的在包中为单个二进制文件提供多个源文件的方法是为其提供一个以main.rs. 有关 \xe2\x80\x9cPackage Layout\xe2\x80\x9d 的文档给出了这个示例(我删除了不相关的元素):

\n
src/\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 lib.rs\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 bin/\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 named-executable.rs\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 another-executable.rs\n    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 multi-file-executable/\n        \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 main.rs\n        \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 some_module.rs\n
Run Code Online (Sandbox Code Playgroud)\n

你想要multi-file-executable这里的案子。将目录命名为您想要为二进制文件命名的任何名称。main.rs然后,您的将以mod some_module;与此项目是一个简单src/main.rs项目相同的方式包含内容。

\n