QT发布exe应用程序的心得体会

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

前言:QT 分为 C++ 和 QML 两个流派,编译用 Release 模式,通过 windeployqt 可以生成依赖库

发布应用程序有三种类型:
1、用 WINRAR 自解压成 1个exe文件,大小为 20MB
2、用网上找的安装包制作软件打包成 1个安装程序,大小也跟 方法一 差不了几MB
3、用 压缩软件打包后,发布绿色免安装版(也就是一堆文件加exe)

如果知道自己用了哪些 QT组件,把不需要用到的删除,再执行上面三种操作就能有效减少文件大小。

QT常被网友抹黑的是它自身存在冲突,但其实这就是我们需要综合考虑的点:
1、需要跨平台的情况下,QT是我所知道最强大的框架,开发过程中只需尽可能使用QT库,而避免使用操作系统API。
缺点:最后的文件是其他技术的几倍,甚至几十上百倍。。
2、不跨平台的情况下,往往有比 QT 更适合的技术,而且发布的应用程序特别小。
缺点:跨平台移植性差,新技术需要更多成本,而QT只需要学习相关的库!

QT 和其他技术的区别:
1、QT,在各操作系统API上进行封装,同时操作系统安装后并不自带QT库
2、其他技术,通常是直接基于操作系统API实现的,也就不需要额外安装这些库

注意: 尽量不使用 Aspack压缩QT的库发布exe,这很容易导致插件报错。

补刀:我在公司发布内部版本时,通常是先用 windeployqt 生成依赖库,然后根据自己经验把非依赖的文件删掉,再用WINRAR自解压结束。
注意:如果不太确定自己用了哪些库,可以删一个运行一次exe,如果是非依赖的话,它是不会报错的。

我的总结:一个开发人员本身就不是只掌握一门技术就“走天下”,而一个项目的设计也不单单只是考虑其文件大小或可移植性。

猜你喜欢

转载自blog.csdn.net/Dennis_Sck/article/details/82188962