【转载】

Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,
如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行。
因此 Qt 官方开发环境里自带了一个工具:windeployqt.exe。
以官方 Qt 5.4.0+MinGW 开发环境为例,
从开始菜单--》Qt 5.4.0--》5.4--》MinGW 4.9 (32-bit)--》Qt 5.4 for Desktop (MinGW 4.9 32 bit),可以打开 Qt 命令行,从这里就可以执行 windeployqt 工具。

集成开发环境 QtCreator 目前生成图形界面程序 exe 大致可以分为两类:
Qt Widgets Application 和 Qt Quick Application。
下面分别介绍这两类exe 的发布方式。

1、Qt Widgets Application可执行程序发布方式

首先用 QtCreator 新建一个 Qt Widgets Application 项目,直接用默认的 QMainWindow 程序就可以了,项目名字假定是 hellomw。

然后以 Release 方式编译生成 exe 程序:

生成的程序运行正常之后,找到项目的生成目录,比如 项目源码路径:
C:\QtPros\hellomw\
它的项目生成目录是
C:\QtPros\build-hellomw-Desktop_Qt_5_4_0_MinGW_32bit-Release\
进入这个文件夹,在进入它的子文件夹 release 里面,找到 hellomw.exe ,
将这个exe 复制到一个新的单独的文件夹里用于发布,比如存到 
D:\hellomw\ 文件夹里面。

然后从开始菜单打开 Qt 命令行,输入命令 :
cd /d D:\hellomw
然后使用 windeployqt 工具命令:
windeployqt hellomw.exe

然后可以在  D:\hellomw 文件夹里看到 windeployqt 工具自动复制的插件文件夹

和  dll文件、qm文件。这时候得到的就完整的 exe 程序发布集合,依赖关系都解决好了。

把  D:\hellomw 文件夹 打包就可以发布了,不用自己一个个找 dll 文件了。
D:\hellomw 文件夹里的qm文件是多国语言翻译文件,不需要可以删了,
其他的都保留。

2、Qt Quick Application发布方式

首先用  QtCreator 新建一个 Qt Quick Application 项目,直接用默认的项目模版,点击下一步生成项目,项目名字假定是 helloqml。 然后以  Release 方式编译生成 exe 程序: 然后找到项目的构建目录,比如项目源码目录  C:\QtPros\helloqml, 它的构建目录是: C:\QtPros\build-helloqml-Desktop_Qt_5_4_0_MinGW_32bit-Release\ 进入这个目录,再进入  release 子文件夹,找到 helloqml.exe , 复制到一个新的单独的文件夹里面,比如  D:\helloqml\ 文件夹里面。

然后从开始菜单打开  Qt 命令行,进入D:\helloqml\文件夹: cd /d D:\helloqml 然后使用  windeployqt 工具命令:

windeployqt helloqml.exe --qmldir C:\Qt\Qt5.4.0\5.4\mingw491_32\qml

注意不要跟烧包一样照抄上条命令,--qmldir  是指出 Qt 库里面的 qml 文件夹位置,
上面命令里 C:\Qt\Qt5.4.0 是 Qt 官方开发环境安装的文件夹,
C:\Qt\Qt5.4.0\5.4\mingw491_32 是Qt类库的目录(QTDIR),
因此使用的 --qmldir 后面写的是 C:\Qt\Qt5.4.0\5.4\mingw491_32\qml 
读者Qt环境安装路径不一样,要根据实际情况修改!

然后可以看到 D:\helloqml 文件夹里有一大堆文件,就是 QtQuick程序需要的依赖文件。
将整个 D:\helloqml 文件夹 打包就可以发布出去,在别的电脑上使用。

转载于:https://www.cnblogs.com/baby0814/p/8568727.html

QT生成可执行的EXE程序相关推荐

  1. Qt在手动执行xxx.exe时报错:由于找不到Qt5xxx.dll,无法继续执行代码。重新安装程序可能解决此问题。

    一.问题描述. Qt在手动执行xxx.exe时报错:"由于找不到Qt5xxx.dll,无法继续执行代码.重新安装程序可能解决此问题.". 二.问题分析. 执行程序依赖库文件Qt5x ...

  2. Web端打开本地可执行的exe程序

    Web端打开本地可执行的exe程序 reg文件是注册表文件. Web启动Colors.reg Windows Registry Editor Version 5.00 [HKEY_CLASSES_RO ...

  3. [转载] python3.6版本生成的python脚本如何打包为可独立执行的exe程序

    参考链接: Python命令行界面编程 如需转载,请注明出处:http://blog.csdn.net/jayloncheng/article/details/77567638 在此,我们使用pyin ...

  4. 转 Java jar (SpringBoot Jar)转为win可执行的exe程序

    原文链接:http://voidm.com/2018/12/29/java-jar-transform-exe/ 打包Jar工程 将java项目打包成jar工程,可以是文章以SpringBoot为例 ...

  5. 在网页中执行本地exe程序的两种方式

    一.有时候,需要在 网页上去执行本地的一个EXE文件,如果用javascript ,一般浏览器,由于安全问题,都会禁止掉这个特性.但经过测试,目前在ie,firefox中仍然可以用JS来实现,但在ch ...

  6. Qt生成中文名称的exe

    以生成Release版本为例 需要修改Makefile.Release文件 修改TARGET和DESTDIR_TARGET两项 修改完之后另存为ansi编码 最后"构建"一下就可以 ...

  7. Qt生成带图标的exe文件

    1.新建test工程,将图标test.icon放到test/icons目录中. 2.选择菜单"文件"->"新建文件或项目",在弹出的对话框中选择" ...

  8. 如何在计算机桌面建立一个软件的快捷图,VB编程:生成EXE图标 (为exe程序在电脑桌面上创建一个快捷图标)...

    在实际的VB编程工作中,常常要为自己的程序在桌面生成一个快捷图标. 用VB在桌面生成图标我提供两种方式,这两种方法都还很简单. 第一种方法,利用vb5stkit.dll来生成桌面图标: 1.利用现成的 ...

  9. python转成exe_将python程序转换成exe程序

    将python程序转换成exe. 一. 先安装python 2.安装下载包,一路next. 3.为计算机添加安装目录搭到环境变量,如图把python的安装目录添加到pth系统变量中即 可.(D:\\p ...

最新文章

  1. 百度指数邀请序列号_腾讯第8款社交AppHood 上线;抖音内测云游戏、直播回放等新功能;百度推出多人视频社交App一起吧| 产品挖掘机...
  2. SAP 图标查找及方法
  3. python下载第三方库失败的解决办法
  4. 【C++】(三) MFC入门教程 (VS 2005)
  5. 教师计算机技术培训内容,2019教师计算机培训计划
  6. 这45个场景,正在被区块链抽筋扒皮…
  7. 每天一种设计模式之抽象工厂模式(Java实现)
  8. 《白雪歌送武判官归京》古诗鉴赏
  9. mppdbLibra
  10. python的查找list的元素
  11. QT 读取csv文件-QT根据显示器大小设置窗口大小-QT绑定信号与槽
  12. mysql统计枚举值
  13. 三个变量存在一个协整方程_计量经济学最基本的31个问题
  14. 海天、李锦记试水“懒人调料”,做饭神器究竟有多神?
  15. 海康大华安防网络摄像头Onvif、RTSP网络无插件直播流媒体服务EasyNVR显示设备不在线问题排查步骤汇总
  16. 和前司运维(张松)谈网络
  17. 银河麒麟系统Java/NetCore开发环境
  18. 100Days-ML --- Day1
  19. 动态合并单元格行和列方法封装 ~~~起手可用
  20. 互联网主机服务器位置,互联网上URL指什么?

热门文章

  1. Nginx 限制某 IP 在一段时间内对服务器发起请求的连接数
  2. Ubuntu16.04 安装Maven 3.5.3
  3. windows10更新后网络无法连接的问题
  4. thinkphp5(tp5)中success跳转页面和弹窗问题解决
  5. 注解@Async解决异步调用问题
  6. python爬虫中文乱码解决方法
  7. SpringBoot2.X + SpringCache + redis解决乱码问题
  8. 如何在Git分支中搜索文件或目录?
  9. 使用HTML5 / Canvas / JavaScript拍摄浏览器内屏幕截图
  10. mysql5.7 解压版 中文乱码_MySQL 5.7解压版安装、卸载及乱码问题的图文解决方法...