QT程序打包--教你做一个可安装的应用程序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18286031/article/details/77836203

欢迎大家加我的群:460952208

很多Qt爱好者想发布自己的Qt软件,但却发现在其他没有安装Qt SDK的机器上无法运行,这就是本文想要说明的问题。现在网上大部分软件都要发布自己开发的应用程序,都会打包到exe文件中,待安装完exe文件后,就会生成很多小文件,其实原理都一样,只是各自使用的打包工具不能罢了。本文主要介绍在Windows平台如何打包自己的Qt程序,相对比较简单的,这并没有正规软件的向导流程。

第一步,先来对程序进行图标设置

1.创建一个包含图标图像的ICO文件,并将其保存在源文件目录下,可命名为mytest.ico;

2.创建一个.rc文件,包含如下内容:

IDI_ICON1               ICON    DISCARDABLE     "mytest.ico"

3.只需要在工程文件Test.pro文件中写入如下内容:

RC_FILE = myico.rc

然后进行qmake,再编译就可以了。

第二步,来对程序进行编译打包

先将程序改为Release版,然后编译运行。


将生成的exe拷贝到一个路径下,这里我拷贝的是 E:\Qt\project\Test 这个路径下面,这个可以自己选择。
然后如下图所示,双击打开这个。

然后cd到所选定的路径下面


使用windeployqt 命令,后面加的是exe的的文件名,然后回车,就可以将其进行打包了,这儿可能还有一些

第三方的dll,这个需要自己手动添加。


下面的这个就可以在别人的电脑上运行了。


接着我们就要把这个做成安装包了。

需要用到的工具有Inno Setup Compiler

inno Setup学习可以参考 用inno Setup做应用程序安装包的示例脚本(.iss文件)

Inno Setup Compiler 下载地址:点击打开链接

新建一个setup.iss

其代码如下:

; This script needs Inno Setup Preprocessor (ISPP by Alex Yackimoff) to compile succefully.
; To download and install ISPP, get the Inno Setup QuickStart Pack from http://www.jrsoftware.org/isdl.php#qsp

#define MSName "测试打包"
#define MSVer GetFileVersion(".\Test.exe")

[Setup]
OutputBaseFilename=Test-{#MSVer}
OutputDir=.
Compression=lzma
SolidCompression=yes

; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)

AppName={#MSName}
AppVersion={#MSVer}
AppVerName={#MSName} V{#MSVer}
AppPublisher=Test
VersionInfoVersion={#MSVer}
AppPublisherURL=
AppSupportURL=
AppUpdatesURL=
DefaultDirName=D:\Test\MyTest
DefaultGroupName={#MSName}

[Languages]
Name: chinese; MessagesFile: compiler:Default.isl

[Files]            
Source: .\Test.exe; DestDir: {app}; Flags: ignoreversion
Source: .\iconengines\*.*; DestDir: {app}\iconengines; Flags: ignoreversion
Source: .\imageformats\*.*; DestDir: {app}\imageformats; Flags: ignoreversion
Source: .\platforms\*.*; DestDir: {app}\platforms; Flags: ignoreversion
Source: .\translations\*.*; DestDir: {app}\translations; Flags: ignoreversion
Source: .\*.dll; DestDir: {app}; Flags: ignoreversion

[Icons]
Name: {commondesktop}\{#MSName}; Filename: {app}\Test.exe; WorkingDir: {app}
Name: {commonstartup}\{#MSName}; Filename: {app}\Test.exe; WorkingDir: {app}
Name: {group}\{#MSName}; Filename: {app}\Test.exe; WorkingDir: {app}
Name: {group}\卸载{#MSName}; Filename: {app}\unins000.exe

[Run]
Filename: {app}\Test.exe; WorkingDir: {app}; Flags: nowait postinstall; Description: 运行 {#MSName}
只要点击运行,然后就会生成我们需要的安装包了。

如下图所示的安装包



安装完成后桌面上就会生成快捷键。双击就可以打开程序,到此,就完成了一个程序的打包。



展开阅读全文

没有更多推荐了,返回首页