目录
运行
添加依赖
发布成单一exe形式
运行
选择Release版本,运行一次
Release
运行后会发现多了Release版本,里面有exe,但是双击时会发现缺少一些动态链接库。
直接点击后缺少动态链接库
添加依赖
在你的Qt的安装包下面会有windeployqt.exe文件,它可以帮你添加依赖。
windeployqt.exe所在目录
在你的release文件夹下,使用cmd命令 进行打包,就是你的windeployqt.exe路径+空格 +你的exe,举例如下:
E:\Qt5.9.1\5.9.1\mingw53_32\bin\windeployqt.exe maze.exe
pause
如果你的软件还不是最终版本,可以把命令写成.bat文件,双击运行即可,省得麻烦。
命令
运行命令或双击你的.bat文件后,会发现添加了一些依赖,创建了一些文件等
添加部分依赖成功
如果你出现上图,没有出错,跳过下一段
为什么要写pause呢?因为有可能失败,如:This application failed to start because it couldn't find or load the Qt platform plugin "windows" ,这是因为一些含Qt的软件等将bin作为了系统变量,比如Anaconda,我在我的Path变量中找到了它,先删除一下,打包后在加上。
Path变量
你会看到release里面有一些依赖,比如有关图标的,数据库的驱动等。
添加依赖成功后
如果你链接了数据库,比如mysql,你需要将动态链接库也放到你的.exe的同级目录下,libmysql.dll位置如下 ,在Qt安装目录的bin文件夹下面
libmysql.dll位置
添加libmysql后
至此,你直接双击.exe文件和你在Qt运行时应该一模一样了。
发布成单一exe形式
利用下面的软件,免费的,可以从官网下载
Enigma Virtual Box
打开软件,选择要打包的exe文件及打包后的文件目录
浏览exe
点击File Options选项,在点击Compress Files复选框,这样打包后的exe比较小
选择压缩
点击Add,添加刚才依赖后生成的所有文件(包括.dll、.db文件等)以及生成的文件夹及里面的内容(文件夹自己建,然后在新建的文件夹里面添加对应文件)
添加文件及文件夹
点击Process进行压缩打包,最后显示成功即可。
标题
你可以点击Run或者在你选的文件夹里面双击你的单一的exe文件即可
生成的单一文件
至此,大功告成!!!
有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。