Qt5.6windows打包发布
2016-07-18 09:43
417 查看
学Qt5也有一段时间了,但是一直没有发布过程序,因为写的程序一直都是给自己用的,也从来没想过要打包发布。不久前做了个“动力调试软件”给A,是时候研究程序发布了。
刚开始脑子想的比较简单,想着直接编译Release版本,找到Release文件夹中相应的exe即可,编译完成后,先在B的电脑上试了一下,发现可以用,兴高采烈地把软件发给了A,大概10天之后,收到反馈,软件无法打开。师兄说有一些dll没有复制过来,可是我B电脑上试过是可以的啊。细想之后明白了问题的关键:B的电脑上安装了Qt,所以程序运行时会自动调用安装目录下的dll。于是换了一台没有安装Qt的电脑重新试了一下,发现软件确实无法打开。
根据弹出的错误提示,从安装目录下拷贝相应的dll,将其与Release文件夹中的exe文件放入同一个文件夹中。在没有安装Qt的电脑上试了下,还是失败。问了下Qt大牛,回复说一些插件没有复制到,百度搜“windows
qt 部署”,搜索以后发现给出的方法都很晦涩难懂。结果又一通乱搜,偶然搜到一个方法,发现很好用,亲测有效,分享给大家:
1.首先编译生成Release版本
2.找到Release版本下对应的exe文件
3.在Release文件夹中,新建个.bat批处理文件(新建.txt文件,更改文件扩展名即可),将下面的代码复制进去。
如果使用的msvc版本的:
C:\Qt\Qt5.6.1\5.6\msvc2013_64\bin\windeployqt.exe myexe.exe
Pause
如果使用的是mingw版本的:
C:\QT5\5.6\mingw492_32\bin\windeployqt.exe myexe.exe
Pause
代码解析:C:\Qt\Qt5.6.1\5.6\msvc2013_64\bin\windeployqt.exe这个是windeployqt.exe工具的路径,要根据自己的qt安装情况进行修改,首先在这里看能不能找到windeployqt.exe,找到了直接把其路径复制过来即可;myexe.exe则是你的可执行程序的名称,不要照抄这里的。
4.上面的步骤完成之后,双击.bat文件,就会把需要用的所有dll文件自动复制到Release文件夹中。
5.将.exe文件和刚才自动复制的所有dll文件放在一个单独的文件夹中。在未安装Qt的电脑上试一试。
6.接着就需要把这些文件打包成一个exe文件了,我用的是Enigma Virtual Box这款软件(附下载)。软件操作很简单,完全可以看懂。
7.打包完成后只需要将新生成的exe文件发布给用户使用就可以了。
附原文链接:http://blog.sina.com.cn/s/blog_66cd08930102w74s.html
刚开始脑子想的比较简单,想着直接编译Release版本,找到Release文件夹中相应的exe即可,编译完成后,先在B的电脑上试了一下,发现可以用,兴高采烈地把软件发给了A,大概10天之后,收到反馈,软件无法打开。师兄说有一些dll没有复制过来,可是我B电脑上试过是可以的啊。细想之后明白了问题的关键:B的电脑上安装了Qt,所以程序运行时会自动调用安装目录下的dll。于是换了一台没有安装Qt的电脑重新试了一下,发现软件确实无法打开。
根据弹出的错误提示,从安装目录下拷贝相应的dll,将其与Release文件夹中的exe文件放入同一个文件夹中。在没有安装Qt的电脑上试了下,还是失败。问了下Qt大牛,回复说一些插件没有复制到,百度搜“windows
qt 部署”,搜索以后发现给出的方法都很晦涩难懂。结果又一通乱搜,偶然搜到一个方法,发现很好用,亲测有效,分享给大家:
1.首先编译生成Release版本
2.找到Release版本下对应的exe文件
3.在Release文件夹中,新建个.bat批处理文件(新建.txt文件,更改文件扩展名即可),将下面的代码复制进去。
如果使用的msvc版本的:
C:\Qt\Qt5.6.1\5.6\msvc2013_64\bin\windeployqt.exe myexe.exe
Pause
如果使用的是mingw版本的:
C:\QT5\5.6\mingw492_32\bin\windeployqt.exe myexe.exe
Pause
代码解析:C:\Qt\Qt5.6.1\5.6\msvc2013_64\bin\windeployqt.exe这个是windeployqt.exe工具的路径,要根据自己的qt安装情况进行修改,首先在这里看能不能找到windeployqt.exe,找到了直接把其路径复制过来即可;myexe.exe则是你的可执行程序的名称,不要照抄这里的。
4.上面的步骤完成之后,双击.bat文件,就会把需要用的所有dll文件自动复制到Release文件夹中。
5.将.exe文件和刚才自动复制的所有dll文件放在一个单独的文件夹中。在未安装Qt的电脑上试一试。
6.接着就需要把这些文件打包成一个exe文件了,我用的是Enigma Virtual Box这款软件(附下载)。软件操作很简单,完全可以看懂。
7.打包完成后只需要将新生成的exe文件发布给用户使用就可以了。
附原文链接:http://blog.sina.com.cn/s/blog_66cd08930102w74s.html
相关文章推荐
- 如何重装TCP/IP协议
- Windows 8 官方高清壁纸欣赏与下载
- 谁是桌面王者?Win PK Linux三大镇山之宝
- 对《大家都在点赞 Windows Terminal,我决定给你泼一盆冷水》一文的商榷
- Windows Clang开发环境备忘
- 从Windows系统下访问Linux分区相关软件
- QT学习 第一章:基本对话框
- 使用Shiboken为C++和Qt库创建Python绑定
- 对《大家都在点赞 Windows Terminal,我决定给你泼一盆冷水》一文的商榷
- Windows下搭建本地SVN服务器
- 使用Windows原生命令一键清空剪贴板
- windows用windeployqt发布qt quick application程序
- 利用开源软件打造自己的全功能远程工具
- Windows 8虚拟机不能全屏的解决方法
- 虚拟化基础架构Windows 2008篇之1-虚拟化基础服务概述
- 虚拟化基础架构Windows 2008篇之5-安装Windows部署服务
- 虚拟化基础架构Windows 2008篇之7-添加其他操作系统的安装镜像