【发布时间】:2011-06-24 20:41:51
【问题描述】:
带有网络库和 GUI 库的 Qt 应用程序大小约为 10MB;也就是说,没有代码。
对于像我这样有互联网连接的人来说,这有点不方便;特别是对于很少使用的程序(即使用一次然后离开)。
我尝试使用 LZMA 和 LZMA2 压缩来压缩 exe 文件,但它什么也没做。
我想让代码本身更小,有没有办法做到这一点?我可以缩小多少?至少在涉及网络库时。
PS:我不想使用 UPX 或此类应用程序。
【问题讨论】:
带有网络库和 GUI 库的 Qt 应用程序大小约为 10MB;也就是说,没有代码。
对于像我这样有互联网连接的人来说,这有点不方便;特别是对于很少使用的程序(即使用一次然后离开)。
我尝试使用 LZMA 和 LZMA2 压缩来压缩 exe 文件,但它什么也没做。
我想让代码本身更小,有没有办法做到这一点?我可以缩小多少?至少在涉及网络库时。
PS:我不想使用 UPX 或此类应用程序。
【问题讨论】:
您可以尝试静态链接;这可能能够从库中丢弃未使用的代码。但是请注意,这可能会影响您在 Qt 开源许可下的义务;与动态链接情况相比,分发静态链接到 LGPL 许可库的闭源(通常是非 LGPL)应用程序会带来additional obligations。当然,如果您的应用程序本身是 GPL 或 LGPL 许可,这没问题。
【讨论】:
您可以从源代码重建 Qt,跳过不需要的位。请参阅configure options 了解您可以省略的内容列表。例如。 -no-openssl 会使网络库变小。
【讨论】:
【讨论】: