UPX是一款先进的可执行程序文件压缩器。压缩过的可执行文件体积缩小50%-70% ,这样减少了磁盘占用空间、网络上传下载的时间和其它分布以及存储费用。 通过 UPX 压缩过的程序和程序库完全没有功能损失,和压缩之前一样可正常地运行。对于支持的大多数格式没有运行时间或内存的不利后果。
(以上来自百度百科)
下载地址: http://upx.sourceforge.net/
用Qt编写程序的好处是显而易见的,但是在编写小型程序时需要附加大量的DLL,这样程序的体积就很大。通常直接用静态编译的方法就可以缩减很大部分,但依然要5+MB。用UPX压缩后体积可以小到原来的30%。
在Qt项目中,将以下语句添加到.pro文件中,就可以在编译的时候自动压缩。-9是压缩率,最低是1
Release:QMAKE_POST_LINK += upx -9 $(DESTDIR_TARGET)
D:\Qt\build-QtUdpTest-Qt5_3_1Static32bit-Release\release>upx -9 QtUdpTest.exe Ultimate Packer for eXecutables Copyright (C) 1996 - 2013 UPX 3.91w Markus Oberhumer, Laszlo Molnar & John Reiser Sep 30th 2013 File size Ratio Format Name -------------------- ------ ----------- ----------- 4793344 -> 1709056 35.65% win32/pe QtUdpTest.exe Packed 1 file.