我创建了我的Rust箱子。这是一件非常微不足道的事情。它构建得很好,并且在其自己的源目录中进行测试时工作正常(我只是在我的测试文件中包含extern crate my_first_crate;
)。
我现在想用完全不同的应用程序测试箱子。
如果我在新应用程序中添加相同的extern crate
行,编译器会告诉我它无法找到包。我期待这个(如果我告诉编译器链接到一个它没有任何线索的库,我会在C中得到相同的结果!)
我是否需要将my_first_crate.rlib文件从源文件复制到应用程序目标/ debug文件夹,或者是否有办法告诉货物它需要链接到rlib文件?
答案 0 :(得分:4)
您需要将crate添加为应用程序的依赖项。将其添加到您的应用程序Cargo.toml
:
[dependencies]
my_first_crate = { path = "/path/to/crate" }
"/path/to/crate"
是包条箱根目录的路径(即包含其Cargo.toml
的目录)。您可以使用相对路径或绝对路径(但如果您打算发布代码,请避免使用绝对路径!)。