最近,在学习QT5的过程中,想尝试着把自己写的工程程序给打包发布出来,在任何一台windows系统都能运行,这样就不会限于电脑需不需要安装QT安装包了。 
首先,先介绍自己使用的环境。我使用的QT版本是。我的电脑windows系统是win10专业版的。下面的打包教程,都是亲测可用的。但个人认为,即便是不同的windows操作系统,不同的QT版本,也应该是可以的。希望大家能及时反馈,我好及时更新。 
第二,介绍一下我所使用的打包工具。一个是QT5自带的windeployqt(这个大家不需要下载安装),另外一个是Engima Virtual Box,这是下载链接Engima Virtual Box,软件图标如下: 

做好这些准备工作之后,操作步骤如下: 
<1>: 打开一个QT程序,以release方式运行一次。操作如下图: 
。 
这时你的工程项目文件夹下,会生成一个关于release的文件夹: 

<2>:打开关于release相关的文件夹,找到该目录下release目录下的.exe程序。此时你点击是运行不成功的。因为缺少QT必要的库文件。将这个.exe文件拷贝出来,创建一个单独的文件夹,放在这个文件夹下。 

<3>:在win10下,搜索QT,如下图: 
 
打开红色标记的命令窗口 : 
 
其实在QT目录下是可以找到这个目录的。

接着输入命令行,cd /d 路径(指的是需要打包的exe程序目录,就是刚才拷贝出来的exe程序所在的目录),回车后: 

输入如下命令行:windeployqt 程序名 敲击回车。这一步操作是将所需的库文件全都拷贝到exe程序的当前文件: 

这时我们看程序目录如下: 
 
此时,在当前目录下是可以点击运行exe程序的,说明库文件都已经拷贝到当前目录下了。现在只需要将这一堆文件进行打包。

<4>打开运行Enigma Virtual Box: 
 
按照上图的示意,添加路径和文件如下图。文件可以托选,选择所有文件后,直接拖入界面框内。注意是要所有文件和文件夹全部拖进。示意图如下: 

在【Files Options】中可以选择是否将文件压缩: 
 
然后点击Process开始打包。 

打包完成后,我们的工作就完成了,去程序打包后的路径点击运行吧。

Qt ------ window下工程项目打包成一个exe程序的更多相关文章

  1. 4-QT的程序打包发布(将QT5的工程项目打包成一个exe程序)

    https://blog.csdn.net/windsnow1/article/details/78004265 最近,在学习QT5的过程中,想尝试着把自己写的工程程序给打包发布出来,在任何一台win ...

  2. QT5的程序打包发布(将QT5的工程项目打包成一个exe程序)

    最近,在学习QT5的过程中,想尝试着把自己写的工程程序给打包发布出来,在任何一台windows系统都能运行,这样就不会限于电脑需不需要安装QT安装包了. 首先,先介绍自己使用的环境.我使用的QT版本是 ...

  3. winform把所有dll打包成一个exe

    大家都知道做winform开发,是可以利用visual studio进行打包的,但是这种打包的方式需要双击安装,那么有没有什么方法,可以把winform程序打包成绿色版呢?当然,这里的“绿色版”也是相 ...

  4. 如何将你写的脚本程序打包成一个exe可执行程序

    ​    编写的程序打包成一个exe文件,随时可以双击执行,想想是不是很酷.接下来我们一起看一下如何将自己编写的程序打包为一个exe的可执行程序. 将程序打包成exe的好处 除了满足自己的成就感以外, ...

  5. 用py2exe打包成一个exe文件

    用py2exe打包成一个exe文件 http://blog.csdn.net/franktan2010/article/details/46514607

  6. 如何将Debug文件夹下的资源打包成一个EXE文件直接执行

    前言:前段时间写了个小程序,想分享给好友看看,可所以资源都放在Debug文件夹下,整个文件夹发给人家这也太……,为了显得稍微专业一点,想把它们打包一个EXE文件执行,因为我见到到这样的程序,直接一个E ...

  7. 使用rar把程序打包成一个exe

    根目录--全部文件--右键添加到压缩文件 常规--创建自解压压缩文件 高级--自解压选项 解压路径--Finger(自己写)--在"Program Files"中创建 设置--解压 ...

  8. C#程序(含多个Dll)合并成一个Exe

    把C#程序(含多个Dll)合并成一个Exe的超简单方法   开发程序的时候经常会引用一些第三方的DLL,然后编译生成的exe文件就不能脱离这些DLL独立运行了. 但是,很多时候我们本想开发一款只需要一 ...

  9. Android Studio工程项目打包成SDK(jar或aar格式)

    Android工程项目打包成SDK 在app的gradle下进行设置: (1)将apply plugin: ‘com.android.application’ 改为apply plugin: ‘com ...

随机推荐

  1. EFI Windows 7 activition

    mountvol X: /s copy SLIC.aml X:\EFI\CLOVER\ACPI\WINDOWS BOOTICE X:\EFI\CLOVER\CLOVERX64.efi slmgr -i ...

  2. spring和junit整合

  3. codeforces478C

    Table Decorations CodeForces - 478C 你有r个红的,g个绿的和b个蓝的气球.要为宴会布置一张桌子,你恰好需要三个气球.附在桌子上的三个气球不应该有相同的颜色.如果我们 ...

  4. 错误代码 0x800700b7 配置错误定义了重复的“system.web.extensions/scripting/scriptResourceHandler”节

    如果是运行VS时就报错,改个端口号就可以解决问题,改完以下两个地方重新运行

  5. 洛谷P2055假期的宿舍

    题目 此题主要是考察二分图匹配,而二分图匹配最主要的就是建图,而图一般都是要分成两个部分来分,比如该题就需要先将在学校住的人和床连在一起,因为在学校住就会与一个床.然后每两个人之间假如他们相互认识就可 ...

  6. SpringBoot整合ssm

    1.创建工程 使用idea可以快速创建SpringBoot的工程 这里选择常用的类库,SpringBoot将各种框架类库都进行了封装,可以减少pom文件中的引用配置: 比如Spring和Mybatis ...

  7. ram自己写?用IP?

    前言 ram这种东西,可以用ip方便,也可以自己写代码描述它. 以下讨论单口ram:8bit*256 流程 1.IP: 使用IP当然是最方便的事情啦,但可移植性差而且可定制性较差. 仿真波形: 2.V ...

  8. 【XSY2760】nonintersect 计算几何

    题目描述 平面上有\(n\)条线段,你要擦掉所有线段但保留原有的\(2n\)个端点,然后连接这些端点形成\(n\)条不相交的线段,每个端点只能在一条线段中. 假设你画的线段总长为\(Y\),原有线段的 ...

  9. 【XSY1295】calc n个点n条边无向连通图计数 prufer序列

    题目大意 求\(n\)个点\(n\)条边的无向连通图的个数 \(n\leq 5000\) 题解 显然是一个环上有很多外向树. 首先有一个东西:\(n\)个点选\(k\)个点作为树的根的生成森林个数为: ...

  10. C/C++ 程序库

    C/C++ 程序库 // --------------------------------------------- 来几个不常见但是很变态的库吧: bundle: 把几乎所有常见的压缩库封装成了一个 ...