我已经测试过了,是很好用
UPX 是著名的 开源 可执行文件压缩工具,可以压缩 Linux, Win32, MacOS, DOS... 等系统下的可执行文件体积。
压缩后文件还是可执行的。论坛里有很多人说,Qt生成的文件体积太大,所以 UPX可以帮大忙。如何 自动化的完成这个压缩过程呢?
这里仅以 Windows 下的 mingw32 为例。 有兴趣的朋友可以 推而广之。
首先 下载 刚刚更新的UPX http://upx.sourceforge.net/download/upx308w.zip
解压缩后,只有 upx.exe 是有用的,可以将它放在 mingw32\bin 或 windows\system32 下,省去设置路径的烦恼
然后 在你的 pro 文件 中的最后加上这么一句。
Release:QMAKE_POST_LINK += upx -9 $(DESTDIR_TARGET)
这句表明,在 编译后,会自动执行 upx -9 $(DESTDIR_TARGET)
-9 的意思是,最大压缩率。
前面的Release 只针对 release 版本有效。因为Debug版本 被压缩后 会丢失调试信息。
这个对DLL 同样有效。所以就放心的加吧。
当然,你也可以加在 Qt\mkspecs\win32-g++\qmake.conf 里,这样 以后所有的 工程就自动 被压缩了。
UPX可以将Qt可执行文件压缩为 原来的 40%大小,还是很诱人的。