曂沅仴駦 发表于 4 天前

Rust Windows下编译 静态链接VCRuntime140.dll

Rust 编译出来的exe默认动态链接VC运行库,分发电脑上需要安装有Microsoft Visual C++ Redistributable for Visual Studio 2015运行库。
编译时能静态链接进去,就省去客户端未安装运行库的问题。方法如下:
只需在当前根目录下新建.cargo\config.toml,写入以下设置
   目录结构
├── .cargo
│   └── config.toml
├── Cargo.lock
├── Cargo.toml
└── src
    └── main.rs
   .cargo\config.toml

rustflags = ["-C", "target-feature=+crt-static"]
   测试代码main.rs
use windows::{core::h, Win32::UI::WindowsAndMessaging::{MessageBoxW, MB_OK}};

fn main() {
    unsafe{
      MessageBoxW(None, h!("Demo"), h!("自带vcruntime140.dll"), MB_OK);
    }
}
   Cargo.toml

name = "rust_vc_runtime"
version = "0.1.0"
edition = "2021"


version = "0.58.0"
features = [
    "Win32_UI_WindowsAndMessaging",
    "Win32_UI_Shell"
]
   添加.cargo\config.toml和未添加.cargo\config.toml结果
https://img-blog.csdnimg.cn/77e7c57e8beb4c9fb7e48bcaa8647519.jpg

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Rust Windows下编译 静态链接VCRuntime140.dll