现在Qt变成了LGPL,我打算再试一次。几年前,我出于一些原因决定不这么做,其中一个原因是可执行文件的巨大尺寸(windows上的Qt)。我发现了一个大约5MB的下限。Trolltech确认了这一点,但告诉我,粒度将得到改进,这将导致更小的尺寸(取决于所需的元素)。
与此同时,情况可能会发生变化。现在Qt中"hello world“(windows和控制台)的大小是多少?
它是关于静态链接的。我认为qtCore和qtGui是必需的。
发布于 2009-01-16 13:55:28
这里有一个Discussion from 2007,我在快速浏览后看到的最小的数字是1.3MB(使用UPX压缩),所以它似乎可以降低一点,但仍然相当大。
发布于 2009-01-18 13:40:33
我们的Installbuilder for Qt产品是一个跨平台的安装工具,有一个Qt前端,被许多商业开发人员使用(包括Trolltech本身用来打包他们的QtCreator IDE)。使用4.4并编译出我们不需要的部分,在Linux x86上我们得到了4.1Mb的开销,在Linux x64上为5.2M,在Windows上为5.3Mb。考虑到这是在使用UPX处理它之前。此外,如果相同的二进制文件需要支持多个Linux发行版,您可能需要考虑发布libstdc++,这将增加大约800kb的大小。
您将需要构建自己的版本,并且基本上为您不使用的小部件启用/禁用ifdef#,您不需要支持的图像格式等。虽然Qt源代码已经为此做好了准备,并且有一些工具可以帮助您,但现实是这是一个繁琐的手动过程(但对于我们这样的应用程序来说是必要的)。它们的嵌入式版本(以前称为QTopia)和“常规”Qt被合并到相同的代码库中,因此我确信,随着时间的推移,构建定制/精简版本将变得越来越容易。
发布于 2009-01-26 15:09:50
这很大程度上取决于您的配置和部署方法。当然,您可以将其编译为静态代码,这将排除不使用的代码。你也可以去掉像异常和STL这样的东西,这将使内存和磁盘占用更小。最后,您是否正在使用诸如squashfs、cramf或jffs2之类的压缩文件系统。试一试
configure --help
有很多选择。通过嵌入式Linux和Windows CE的Qt嵌入式端口,您还可以使用qconfig加载配置文件,这些配置文件允许您剥离许多功能组。有关详细信息,请参阅http://doc.trolltech.com/main-snapshot/fine-tuning-features.html。
https://stackoverflow.com/questions/450455
复制相似问题