Qt程序打包(封包)
2016-12-22 09:22
197 查看
一.使用单文件封包工具
单文件封包工具,顾名思义就是将可执行文件及其相关依赖打包成单个可执行文件的工具。
这里推荐两个单文件封包工具:Enigma Virtual Box和BoxedApp Packer,都是免费的,度娘有下载。
这两个工具操作方法类似,这里以Enigma Virtual Box为例,打包一个我写的一个Qt程序。
Qt程序的目录如下图所示,包括可执行文件及其依赖库。
![](https://img-blog.csdn.net/20161222084028598?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
打开Enigma Virtual Box,浏览封包的主程序,也就是上图中的DXManager.exe,如下图所示。
![](https://img-blog.csdn.net/20161222084226613?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后点击“打开”按钮,此时封包程序另存中会自动显示一个默认的路径,如下图中红框所示。这个路径就是封包完成后的单文件存储的路径。当然也可以不使用默认的路径,自己选择其他的路径,我这里使用默认路径。
![](https://img-blog.csdn.net/20161222084601239?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
点击右下角的“文件选项”按钮,打开“文件选项”窗口,并勾选其中的“压缩文件”,如下图中红框所示。压缩后的单文件会小得多,所以建议勾选。
![](https://img-blog.csdn.net/20161222084928694?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
点击左下角的“增加”按钮,开始增加文件,如下图所示。
![](https://img-blog.csdn.net/20161222085404632?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
需要注意的是这里只能增加文件,不能增加文件夹,如下图所示。
![](https://img-blog.csdn.net/20161222085726526?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
选中要增加的文件,点击“打开”按钮,会弹出“选择文件夹”串口,这里默认即可,如下图所示。
![](https://img-blog.csdn.net/20161222085905531?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
此时的效果如下图所示。
![](https://img-blog.csdn.net/20161222085946215?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
但是Qt程序目录中platforms文件夹里的dll还未添加,还是点击左下角的“增加”按钮,开始增加文件夹,如下图所示。
![](https://img-blog.csdn.net/20161222090147879?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
将文件夹命名为platforms,如下图所示。
![](https://img-blog.csdn.net/20161222090257732?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
还是点击左下角的“增加”按钮,往文件夹中添加文件,如下图所示。
![](https://img-blog.csdn.net/20161222090439680?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
这样所有文件都添加完了,如下图所示。
![](https://img-blog.csdn.net/20161222090603916?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后点击右下角的“执行封包”按钮,开始封包,如下图所示。
![](https://img-blog.csdn.net/20161222090709218?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
封包完成后,Qt程序目录多了一个DXManager_boxed.exe,它就是我们需要的单文件。如下图所示。
![](https://img-blog.csdn.net/20161222091042220?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
二.安装包的制作
使用单文件封包工具具有一定的局限性,当应用程序依赖第三方的.exe时,这种方法就不适用了。所以,当应用程序依赖第三方的.exe时,还是要将应用程序制作成安装包,在安装的过程中安装第三方的.exe。
安装包制作工具推荐火凤安装包制作工具(HofoSetup),如下图所示。
![](https://img-blog.csdn.net/20161222124731127?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
详细的介绍可以参考官网http://www.hofosoft.com/
,这里只介绍使用方法。其实使用方法和一般的安装包制作工具类似。
在文章Qt查找依赖库的简单方法的方法二中,找到的依赖除了Qt的dll,还包括VC运行时库vcredist_x86.exe。因此不能封包成单文件,必须制作安装包。
打开HofoSetup,如下图所示。
![](https://img-blog.csdn.net/20161222130640015?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
填好相关信息,如下图红框中所示。
![](https://img-blog.csdn.net/20161222130758484?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
然后点击“一键打包”按钮,就开始打包了,如下图所示。
![](https://img-blog.csdn.net/20161222130927250?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
打包完成界面如下所示,退出即可。
![](https://img-blog.csdn.net/20161222131151051?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
此时,在D:\test中生成了名为TestSetup.exe的安装包,如下图所示。
![](https://img-blog.csdn.net/20161222131308771?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvc2hhbmdwYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
上面只是最基本的操作,更多的可以自己尝试。需要说明的是HofoSetup的高级功能是收费的,但是在国内,你懂的。
![](https://img-blog.csdn.net/20161215152726703)
单文件封包工具,顾名思义就是将可执行文件及其相关依赖打包成单个可执行文件的工具。
这里推荐两个单文件封包工具:Enigma Virtual Box和BoxedApp Packer,都是免费的,度娘有下载。
这两个工具操作方法类似,这里以Enigma Virtual Box为例,打包一个我写的一个Qt程序。
Qt程序的目录如下图所示,包括可执行文件及其依赖库。
打开Enigma Virtual Box,浏览封包的主程序,也就是上图中的DXManager.exe,如下图所示。
然后点击“打开”按钮,此时封包程序另存中会自动显示一个默认的路径,如下图中红框所示。这个路径就是封包完成后的单文件存储的路径。当然也可以不使用默认的路径,自己选择其他的路径,我这里使用默认路径。
点击右下角的“文件选项”按钮,打开“文件选项”窗口,并勾选其中的“压缩文件”,如下图中红框所示。压缩后的单文件会小得多,所以建议勾选。
点击左下角的“增加”按钮,开始增加文件,如下图所示。
需要注意的是这里只能增加文件,不能增加文件夹,如下图所示。
选中要增加的文件,点击“打开”按钮,会弹出“选择文件夹”串口,这里默认即可,如下图所示。
此时的效果如下图所示。
但是Qt程序目录中platforms文件夹里的dll还未添加,还是点击左下角的“增加”按钮,开始增加文件夹,如下图所示。
将文件夹命名为platforms,如下图所示。
还是点击左下角的“增加”按钮,往文件夹中添加文件,如下图所示。
这样所有文件都添加完了,如下图所示。
然后点击右下角的“执行封包”按钮,开始封包,如下图所示。
封包完成后,Qt程序目录多了一个DXManager_boxed.exe,它就是我们需要的单文件。如下图所示。
二.安装包的制作
使用单文件封包工具具有一定的局限性,当应用程序依赖第三方的.exe时,这种方法就不适用了。所以,当应用程序依赖第三方的.exe时,还是要将应用程序制作成安装包,在安装的过程中安装第三方的.exe。
安装包制作工具推荐火凤安装包制作工具(HofoSetup),如下图所示。
详细的介绍可以参考官网http://www.hofosoft.com/
,这里只介绍使用方法。其实使用方法和一般的安装包制作工具类似。
在文章Qt查找依赖库的简单方法的方法二中,找到的依赖除了Qt的dll,还包括VC运行时库vcredist_x86.exe。因此不能封包成单文件,必须制作安装包。
打开HofoSetup,如下图所示。
填好相关信息,如下图红框中所示。
然后点击“一键打包”按钮,就开始打包了,如下图所示。
打包完成界面如下所示,退出即可。
此时,在D:\test中生成了名为TestSetup.exe的安装包,如下图所示。
上面只是最基本的操作,更多的可以自己尝试。需要说明的是HofoSetup的高级功能是收费的,但是在国内,你懂的。
相关文章推荐
- Qt程序打包(使用Enigma Virtual Box和BoxedApp Packer封包)
- [转]Qt程序打包(封包)
- Qt程序打包(使用Enigma Virtual Box和BoxedApp Packer封包)
- Windows如何打包Qt程序
- Qt程序打包成exe可执行文件图文教程
- Qt程序用dpkg-buildpackages打包-Linux技术文档 - diybl
- Pthon+Qt程序 打包
- 关于使用了QtWebKit的PyQt程序打包后无法显示网页图片的问题(Mac0S和windows)
- Windows如何打包Qt程序
- Qt基于TCP网络程序发包封包抽象
- Qt基于TCP网络程序发包封包抽象
- windows下打包QT5.1程序
- QT 程序打包部署
- Windows如何打包Qt程序
- NSIS打包发布Qt程序
- Qt程序打包成exe可执行文件图文教程
- Qt 程序打包
- 打包发布qt程序
- Qt应用程序打包成windows下的.exe程序的方法
- QT程序打包发布