减少Qt GUI应用程序的大小

Dmi*_*tri 14 c++ dll qt static-libraries

我正在学习使用Qt Creator开发应用程序.我在Windows下构建了一个简单的应用程序,取决于使用mingwm10.dll,QtCore4.dll,QtGui4.dll,QtNetwork4.dll.在QtQui4.dll之外,我只使用了几个小部件,并且不需要所有其他的...是否可以缩小QtGui4.dll的大小或者做其他事情以减少应用程序的部署大小?静态链接怎么样?它会嵌入整个dll,还是只使用它的一部分?还有可能Qt静态地和一些动态链接一些dll吗?

Phi*_*e F 13

通过删除某些功能无法缩小QtGui4.dll.奇趣科技正在研究这个问题,但好的解决方案似乎相当遥远:

静态链接,我认为它在Windows上很成问题.每次我尝试,这都是一场噩梦.

所以,看起来你常常遇到常规DLL.你唯一能做的就是(我为我的Qt应用做的):

  • 使用UPX压缩你的DLL

要么

  • 在安装程序中使用强力压缩

如果你已经UPX你的dll,你不能通过安装程序压缩进一步减少它,但这可以减少其他文件.

  • 是的,“UPX -9 QtGui4.dll”就是正确的选择:) (2认同)

Hen*_*rtz 7

最好的方法是使用configure手动配置Qt库.通过发行

configure --help
Run Code Online (Sandbox Code Playgroud)

您将看到许多可能有助于减少磁盘和内存占用的选项.例如

--no-stl
--no-exceptions
Run Code Online (Sandbox Code Playgroud)

可以减少应用程序的占用空间.您还可以修改mkspec以使用更积极的编译器优化标志.