QT打包成一个exe,并且将安装包打包到最小

在使用QT的Debug生成exe,然后对exe输入命令,重新打包为一个exe,发现exe竟然要500多M,整个程序也仅仅只有14M而已,发现有大量的非必要文件,故现在使用以下方法进行打包,目前是打包最小的一种方式。

1、使用Release编译出exe文件

首先选择构建套件下面的Release
QT打包成一个exe,并且将安装包打包到最小_第1张图片

2、重新编译运行打包,在程序目录下就能看到

build-包名-Desktop_Qt_5_12_9_MinGW_64_bit-Release

将其exe复制到一个新建文件夹中,然后打开

QT打包成一个exe,并且将安装包打包到最小_第2张图片
输入命令

cd /d exe所在目录  //直接复制,右键单击即可

然后输入命令

windeployqt exe安装包的名称

此时就会产生一些列的依赖,dll文件等,但其实这其中很多我们没有使用到。
最简单的方法就是每一个文件都删除试一下,这样就可以保证包最小,也不会产生依赖文件。

1、QT模板库

(1)Qt5Core.dll 为QT核心库
(2)Qt5Gui.dll 为QT Gui库
(3)Qt5Widgets.dll QT中的GUI程序都需要,基本上都需要导入这个包。

2、ICU依赖库

(1)icudt51.dll
(2)icuin51.dll
(3)icuuc51.dll

3、QT插件库(新增库,路径必须正确)

(1)根据不同的程序,需要不同的插件库
(2)在文件夹下面的相关dll库

4、EGL依赖库,为OpenGL,OpenGL es提供接口

(1)libEGL.dll
(2)libGLESv2.dll

5、mingw依赖库(msvc编译则无需这些库)

(1)libgcc_s_dw2-1.dll
(2)libstdc++ -6.dll
(3)libwinpthread-1.dll

6、VC运行库(mingw编译则无需这些库)

(1)msvcr110.dll
(2)msvcp110.dll

QT打包成一个exe,并且将安装包打包到最小_第3张图片

删完之后剩下的dll就是必须的依赖环境

如果要打包成一个exe,可以使用Engima Virtual Box工具

你可能感兴趣的:(QT开发,qt,windows,c++)