Error message here!

Hide Error message here!

忘记密码?

Error message here!

请输入正确邮箱

Hide Error message here!

密码丢失?请输入您的电子邮件地址。您将收到一个重设密码链接。

Error message here!

返回登录

Close

将visual sdudio+Qt5.12 制作的程序打包成单个exe

panday 2020-02-14 16:50:00 阅读数:14 评论数:0 点赞数:0 收藏数:0

在GitHub上下载了个qt程序,由于C++不太会,经过安装qt、修改编码等一系列操作终于可以运行了。

生成的exe在运行时依赖很多dll或者图片文件,直接拷贝到其他电脑上无法运行,可以将依赖的dll一块打包成单个exe文件,具体操作如下。

工具: 

1.Enigma Virtual Box虚拟文件打包工具

2.Qt 5.12.3 (MSVC 2017 64-bit) 

在安装Qt时自动带的有。

 

 

 

步骤:

1. 用visual studio 编译出发布版的exe文件

 

 

 调试后将生成release文件夹,里面由目标exe文件。

 

 

 2. 将这个目标exe文件拷贝到另一个空文件夹

 

 

 3. 将此exe依赖的dll文件用Qt 5.12.3 (MSVC 2017 64-bit)拉取到00这个文件

打开Qt 5.12.3 (MSVC 2017 64-bit),是一个命令提示符窗口:

 

 

 将目录切换到00文件夹,执行windeployqt  flowers.exe (目标exe文件),这样会将依赖的dll拉取到这个文件夹中。

 

 执行之后文件夹里内容:

 

 拉取完dll后点击flowers.exe是可以执行的,未拉取的话无法执行,提示缺少dll。

4. 用Enigma Virtual Box工具将flowers.exe与依赖的dll一块打包成单个exe文件

打开Enigma Virtual Box工具,选择要打包的exe和依赖的dll:

 

 

 

 将文件夹中原exe文件移除:

 

 勾选压缩选项:

 

 5. 执行打包

点击右下方的打包,打包完退出工具即可。

 

 

然后文件夹中就会出现不依赖dll单个的exe文件,这样就直接将单个exe可以拷贝到其他电脑上运行了。

 

版权声明
本文为[panday]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/panda-blog/p/12307986.html