kaixuan1115 / notes

笔记收录
6 stars 0 forks source link

RUST静态链接,让编译出来的程序不再依赖其他库 #37

Closed xiaokaixuan closed 1 year ago

xiaokaixuan commented 1 year ago

在编译RUST CLI之后,发给客户,如果客户的电脑没有安装相应的依赖,那会运行不了,那如何让RUST程序自带干粮,不依赖这些七七八八的库呢?

如果你用的是RUST GNU版本,那可以直接发给客户,本身就自带了依赖项,不会有问题,本文主要说的是MSVC版本的RUST:

找到 ~/.cargo/config文件,如果没有,请自己创建,然后加入以下代码,就启用静态编译了:

 [target.x86_64-pc-windows-msvc]
rustflags = ["-C", "target-feature=+crt-static"]

如下:如果用DIE软件来检测出你写出的RUST程序的依赖,加载exe文件后,点Import,发现只依赖系统自带的dll动态链接库,因此客户不用再安装其他dll了。 1150502-20200323085301363-1130709011 1150502-20200323085314683-1448759090