如何最小化Qt应用程序的大小?

时间:2014-07-01 14:15:04

标签: qt

所有需要的.dll文件的应用程序大小非常大(接近30 MB)。我怎么能减小这个尺寸?

2 个答案:

答案 0 :(得分:5)

理论上,您可以执行以下任何操作:

  1. 停用您不使用的Qt功能。见the official documentation on the subject
  2. 使用较旧的Qt版本,该版本的依赖性较低,例如: ICU和总数较少的图书馆。
  3. 使用链接时优化(包括Qt DLL)构建所有内容。您的里程可能会有所不同(您甚至可能会变大,但在此过程中会更快)。
  4. 静态构建所有内容,并仅链接您需要的内容。请注意,这很大程度上取决于链接器和编译器消除死代码的能力。这可能是也可能不值得:通常,大多数DLL的内容都被使用,所以你可能只会削减MB左右。某些编译器(尤其是MSVC)无法处理导致的目标文件大小(可能仅在与#2结合使用时)。
  5. 不在乎:我们生活在宽带互联网时代。使用例如压缩分布式软件包7z以尽量减少下载时间。
  6. 使用UPX之类的内容压缩二进制文件。将部分缓解#4。
  7. 我和4一起去。

答案 1 :(得分:1)

除了通用原则(剥离二进制文件,如果你对C ++感到满意,不要使用QML),我认为你需要对你不需要的to disable the features使用configure:

  

包含或排除功能

     

-feature-和-no-feature-选项分别包括和排除特定功能,其中列出了文件qtbase / src / corelib / global / qfeatures.txt。   例如,要禁用“辅助功能”,请提供-no-feature-accessibility作为参数:

     

./ configure -no-feature-accessibility

免责声明:您在此属于自己的领域,因此最终可能会遇到许多需要解决的问题。