如何在Rust中编译和链接.cpp文件?

4

如何在Rust项目中编译和链接一个.cpp文件?

假设我有一个Rust项目,我想从Rust中调用一些C++或C函数的extern "C"函数。

最简单的方法是什么?

1个回答

6

对于复杂的项目,使用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)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接