Qt快速入门系列教程(三):发布程序

物联我心2018-12-05 13:54:53


发布HelloWorld程序



1.查看项目目录


    经过上次的编辑之后会发现在项目储存目录中多了一个build-HelloWorld-Desktop_Qt_5_10_0_MinGW_32bit-Debug目录,里面存放的就是编译生成的文件。该目录的内容如下图所示。



     这里有两个目录:debug和release,因为编译时默认是debug版本,所以现在release目录中是空的。打开debug目录,可以看到生成的可执行文件helloworld.exe,如下图所示。



    此时双击helloworld.exe文件,会弹出系统错误提示框,提示丢失了Qt5Cored.dll文件。如下图所示。



     我们可以在Qt安装路径下找到该文件,我这里是在D:\soft_work\qt\5.10.0\mingw53_32\bin中,将其复制到debug目录里面,然后还会提示缺少其他几个dll文件,如图所示。



     依次将它们复制过来即可,如果不想去找,小编在此已经打包好上传,欢迎下载:https://pan.baidu.com/s/1_7NEe1-hzEJPXXJ25JGcug。完成后helloworld.exe就可以运行了,如图。



2.编译release版本程序


      可以看到debug版本的可执行文件需要的dll文件很大,因为其中包含了调试信息。而实际发布软件是使用的release版本,下面就来编译release版本的helloworld程序。(PS: 如果前面关闭了Qt Creator,那么需要在Qt Creator中再次打开helloworld项目,可以从欢迎模式的开发页面中打开最近使用的项目,也可以从文件菜单中打开,还可以将源码目录中的.pro文件直接拖入到QtCreator来打开。)

      如下图所示,在左下角的目标选择器中设置为release版本,也就是发布版本。完成后运行程序即可。





3.设置应用程序图标


       想要发布的程序有个漂亮的图标,操作非常简单,把要设置的ico图标放到源码目录,例如myico.ico文件,然后打开项目文件helloworld.pro,在最下面添加一行代码:

RC_ICONS = myico.ico

       再次运行程序,可以看到窗口左上角出现了设置的图标。



   现在到build-HelloWorld-Desktop_Qt_5_10_0_MinGW_32bit-Release目录,可以看到helloworld.exe已经使用了新的图标,可以将其复制到一个新建文件夹中,然后将需要的几个dll文件(跟debug版本的不是完全一样哦!)也复制过来,分别是Qt安装目录下bin目录中的libgcc_s_dw2-1.dll、libstdc++-6.dll、libwinpthread-1.dll、Qt5Core.dll、Qt5Gui.dll和Qt5Widgets.dll这6个文件,另外,还需要将D:\soft_work\qt\5.10.0\mingw53_32\plugins目录中的platforms文件夹复制过来,里面只需要保留qwindows.dll文件即可,如下图所示。最后将该文件夹压缩打包即可发布。



四、Qt工具介绍和附录


     安装好Qt后,会在开始菜单生成一个目录,如下图所示。



    这里是Qt提供的几个工具软件。其中AssistantQt助手,它已经集成到了QtCreator中,就是帮助模式;DesignerQt设计师,它也集成到了Qt Creator中,就是设计模式; LinguistQt语言家,用来对软件进行国际化翻译;下面的Qt 5.10 for Desktop可以用来进行命令行操作,比如使用命令行来编译程序等。



附录


设置环境变量


       前面为了运行生成的helloworld.exe文件,复制了一些dll文件。其实,如果只想在本机运行程序,那么不必要每次都复制这些文件,只需要将path环境变量设置一下即可。我们在桌面计算机(我的电脑)图标上右击,选择属性,然后选择高级系统设置,在高级页面选择环境变量,然后在系统变量中找到Path变量,双击,在变量值的最后,添加上Qtbin目录的路径,我这里是; D:\soft_work\qt\5.10.0\mingw53_32\bin(注意,在最前面有个英文半角的分号)。如下图所示。

   这样以后直接在本机运行exe文件就不需要再复制那些dll文件了。其实,还有一种方式也不需要dll文件,那就是静态编译,不过使用静态编译的Qt程序很大,而且不够灵活,所以这里不再讲解,有兴趣的朋友可以在网上搜索一下。




    本期到此结束,谢谢大家的观看!


   参考资料:霍亚飞.Qt Creator 快速入门(第二版).北京:北京航空航天大学出版社.2014.1


下期预告

编写Qt多窗口程序


由于运营组人数严重不足,已经对推送造成较大影响,希望大家能帮我们把公众号推荐给想要运营的同学,环缓解我们的燃眉之急,运营组在此感激不尽。