10 rust rust-cargo
我有一个项目,让我们称这个项目为Master.这个Master项目取决于我已经编写的其他库,并且在不同的项目中分开,让我们称这个项目库.
将git依赖项或未构建的项目依赖项添加到rust中非常简单.但是,如果我想选择已经构建的Library.librs,告诉货物在编译Master(输出Master.exe)时使用它,那么我可以运送整个程序,如下所示:
-Master
--lib
---Library.librs
--Master.exe
Run Code Online (Sandbox Code Playgroud)
这可以用货物完成,还是我必须使用带有-L参数的rustc?如果是这样,怎么样?感谢您提出任何有用的建议.
Cargo通常将主src文件夹作为src放置,所以我假设它就在那里.
Master文件夹中的Cargo.toml文件看起来像(它将在/ src上面的根目录中):
[package]
name = "Master"
version = "0.0.1"
authors = ["You"]
[dependencies.Library_lib]
path = "src/lib"
Run Code Online (Sandbox Code Playgroud)
然后在/ src中,您可以获得项目Master的源代码.在/ src/lib中为您的库添加另一个Cargo.toml文件:
[package]
name = "Library_lib"
version = "0.0.1"
authors = ["You"]
[lib]
name = "Library_lib"
path = "lib.rs"
Run Code Online (Sandbox Code Playgroud)
最后在你的/ src和/ src/lib中放一个lib.rs文件(在每个地方).
在src/main.rs中,您可以同样引用您的库:
extern crate Library_lib;
use Library_lib::something_to_import_from_lib;
Run Code Online (Sandbox Code Playgroud)
这是您引用crate并使用use语句的地方,因此您可以使用lib中的内容.
在/ src/lib/lib.rs中,使用pub关键字声明要公开的单元.
| 归档时间: |
|
| 查看次数: |
1194 次 |
| 最近记录: |