百科问答小站 logo
百科问答小站 font logo



怎样解决Qt发布程序体积过大的问题? 第1页

  

user avatar   yao-dong-27 网友的相关建议: 
      

看你用了core gui widget,说明你是用Qt 5.x的,5.x增加了很多新特性的确大了一些。

如果只是写个小程序,不需要5.x的新特性,那么推荐Qt 4.7.x/4.8.x。

Qt适合三种场景,

1. 必须跨平台项目

2. 大项目,代码行数在30万+

3. Qt铁杆粉的项目

这三种场景下,安装包大小都不是主要问题。

减小安装包的方法也很简单:自己编译Qt库

在configure的时候去掉RTTI,异常,Qt3支持,优化选项用最小大小(性能差不了太多)。

如果你的程序真的很小,那么可以直接静态链接,这样就更小了。

给你个参考:

Qt 4.7.1 下静态链接的Helloworld,大约 1.8mb。

Qt 4.7.1 下动态链接的QtCore+QtGui+imageformat plugin 大约 7 mb。

Qt 5.x以后才把Widget从QtGui里分离了出来,4.x的时候有 QtCore 和 QtGui就够了。

这是我的 YY语音项目用到的Qt库的大小,是基于 Qt 4.7.1 的


附送两个以前写的答案,供参考。

为什么 Qt Creator 的编译如此之慢? - 编程 QT 如何打包一个软件? - 编程



  

相关话题

  为什么说指针是 C 语言的精髓? 
  如果要改进C语言,您最希望添加哪些语言特性,移除哪些语言特性? 
  这个如此诡异的C语言「怪事」是怎么回事? 
  怎么在事先未知将要输入数字的个数的情况下,将其全部赋值给一个数组? 
  C和C++的适用场合?如何创建C++实现的动态库?动态库如何保证向后兼容,即二进制兼容性? 
  为什么c++中要分为heap(堆)和stack(栈)? 
  有人对 C++ 基本数据类型采用 int x{5}; 的方式进行初始化吗? 
  将文件编译成某种代码,打印到A4纸上,这种想法是否可行? 
  strcpy的源代码中返回值是指针的意义是什么? 
  c++初学者有必要深挖这样的问题吗? 

前一个讨论
为什么部分日本人怀念昭和年代?
下一个讨论
为什么知乎里讨论抗日战争很激烈,讨论文革却一边倒?





© 2025-05-14 - tinynew.org. All Rights Reserved.
© 2025-05-14 - tinynew.org. 保留所有权利