Rust 生成不依赖 VC 运行库的 dll
在 Windows 上生成一个DLL供 C# 调用,本机调试正常,放在另一台电脑一直报"不能加载DLL"的错误
一开始以为是 32位和 64位的问题,检查后发现没有问题
后来在一个博主那找到了答案:RUST在WINDOWS上,利用VC编译出来的DLL,默认是依赖VC运行库的;感觉 RUST 工具链真是不靠谱,远不如GO的工具方便.
修改 ~/.cargo/config 里,加配置
#x64软件
[target.x86_64-pc-windows-msvc]
rustflags = ["-C", "target-feature=+crt-static"]
#x86软件
[target.i686-pc-windows-msvc]
rustflags = ["-C", "target-feature=+crt-static"]
再重新编译,编译出来的不再依赖VC运行库(至少我在另一台测试后,不再报错)
参考的博客 : https://www.chenxublog.com/2022/06/05/rust-without-vc-library.html