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

打印 上一主题 下一主题

主题 656|帖子 656|积分 1968

Rust 编译出来的exe默认动态链接VC运行库,分发电脑上需要安装有Microsoft Visual C++ Redistributable for Visual Studio 2015运行库。
编译时能静态链接进去,就省去客户端未安装运行库的问题。方法如下:
  只需在当前根目录下新建.cargo\config.toml,写入以下设置
   目录结构
  1. ├── .cargo
  2. │   └── config.toml
  3. ├── Cargo.lock
  4. ├── Cargo.toml
  5. └── src
  6.     └── main.rs
复制代码
  .cargo\config.toml
  1. [target.'cfg(all(windows, target_env = "msvc"))']
  2. rustflags = ["-C", "target-feature=+crt-static"]
复制代码
  测试代码main.rs
  1. use windows::{core::h, Win32::UI::WindowsAndMessaging::{MessageBoxW, MB_OK}};
  2. fn main() {
  3.     unsafe{
  4.         MessageBoxW(None, h!("Demo"), h!("自带vcruntime140.dll"), MB_OK);
  5.     }
  6. }
复制代码
  Cargo.toml
  1. [package]
  2. name = "rust_vc_runtime"
  3. version = "0.1.0"
  4. edition = "2021"
  5. [dependencies.windows]
  6. version = "0.58.0"
  7. features = [
  8.     "Win32_UI_WindowsAndMessaging",
  9.     "Win32_UI_Shell"
  10. ]
复制代码
  添加.cargo\config.toml和未添加.cargo\config.toml结果
  


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

曂沅仴駦

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表