如何在Rust中编译和链接.cpp文件?
如何在 Rust 项目中编译和链接 .cpp 文件?
假设我有一个 Rust 项目,我想extern "C"从 Rust调用一些函数,即 C++ 或 C 函数。
最简单的方法应该是什么?
回答
对于复杂的项目,cmake crate应该有用,但是对于小项目,使用 Rust 的 build.rs 就可以了。
在build.rs,做
fn main() {
cc::Build::new()
.cpp(true)
.file("src/my_lib.cpp")
.compile("lib_my_lib.a");
}
它应该放在项目的根目录中。然后简单地运行cargo build。对于C文件,取下.cpp(true)