rust导出Dll
目录
rust导出dll
首先创建lib项目
cargo new addlib -lib
编辑lib.rs
//添加一个标记 #[no_mangle],防止编译器在编译的时候,重命名函数。
#[no_mangle]
//pub 公开 extern,导出
//"stdcall"是调用约定ABI,rust支持stdcall,aapcs,cdecl,fastcall,vectorcall,Rust,rust-intrinsic,system,C,win64,sysv64
pub extern "stdcall" fn add(a: i32,b:i32) -> i32 {
return a+b;
}
编辑cargo.toml,添加
[lib]
name="addlib"
crate-type = ["cdylib"]
终端运行
cargo build --release
编译成功之后会在相关目录生成动态库文件。