3

QT上位机开发(软件的发布和部署)

 8 months ago
source link: https://blog.csdn.net/feixiaoxing/article/details/135615201
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        我们在读书的时候,如果程序写好了,这个时候一般直接把exe拷贝给老师就可以了。这就是最原始的软件发布。但是,这个规则套在qt和商业上位机开发上,就显得有点不合时宜了。原因有两点,第一,我们开发的只是exe文件,它本身还要qt各个dll动态库的帮忙才能运行起来;第二,一个上位机软件不仅仅是程序本身,还依赖于配置文件、美工文件、语言包、数据库、数据库配置文件等很多内容,并不仅仅是拷贝一个exe那么简单。

        今天借着学习qt的机会,我们来看下如何发布qt平台的软件。

6fc373a1ad704d49be67b543fb877029.png

1、利用windeployqt.exe

        网上关于qt发布的内容很多,但是怎么找到qt依赖的动态库文件,其实一个程序就可以了,那就是windeployqt.exe。首先,我们在qt安装目录下面找到这个程序,接着用这个程序就可以找到exe对应的依赖库文件了。

C:\Qt\Qt5.12.5\5.12.5\msvc2017\bin\windeployqt.exe QtWidgetsApplication.exe

2、拷贝好配置文件

        如果大家有印象的话,之前因为调试,我们进行配置文件加载、sqlite数据库加载的时候,这些文件都是放在和cpp同名的目录下。现在因为需要把这些软件部署到客户的电脑上面,所以就需要把这些文件copy到和exe同名的目录下,这样程序才能正确加载。

3、准备好qss文件、图片文件

        之前为了美化,我们还学习qss文件。所以关于qss脚本部分的内容、图片部分的内容,也需要拷贝到exe同级目录下,不然辛辛苦苦做好的美化包就发挥不了作用了。

4、语言包

        很多时候,我们开发的上位机软件不仅仅需要满足国内市场,还要满足国外市场,甚至是多语言的国家和地区,比如说东南亚地区,比如说欧洲地区等等。这个时候,我们就要学会开发多语言包,并且根据客户的选择灵活加载不同的语言包,然后重启。目前来说,最最基础的中文和英文还是需要的,因为保不齐哪天就有国外的订单飘过来。

5、第三方库

        很多时候,我们的程序还需要依赖第三方动态链接库文件。就拿qt上位机来说,就可能会用到boost、opencv、pcl这些常用库。所以,我们还需要记录好这些第三方库的版本。这样发生问题之后,才可能进行回溯和改进。

6、数据库和sql文件

        对于业务比较大的上位机来说,数据库是必不可少的。有条件的话,可以把数据库单独放在一个独立的服务器上面。实在没有办法了,才考虑把数据库和上位机软件安装在一起。这中间odbc安装、数据库版本的选择、sql文件的导入,最好都以文档的形式记录下来,保证所有的人按照这个文档,都可以顺利实现数据库的安装和导入。

7、日志文件目录

        剩下来,最最重要的部分,就是日志文件的目录设置。软件在运行的过程当中,出问题是正常的。我们的目标应该是少出问题,或者说出了问题,现场运维的朋友也可以第一时间来解决。即使现场的朋友没有办法解决,也可以迅速拿到log文件,把这些文件发送给开发商来解决,这都是常规的处理办法和措施。所以,等软件部署完毕之后,一定要检查一下,电脑上的日志目录是否设置正确。如果无法使用todesk之类的远程工具来处理,log和录屏似乎是唯二的故障解决办法了,不过效率也会低一点。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK