2011-06-24 50 views
3

Qt應用程序的網絡庫和GUI庫大約爲10MB;也就是沒有代碼。一種解決Qt應用程序大小的方法

對於像我這樣的互聯網連接的人來說,這有點不方便;特別是當涉及到一個很少使用的程序(即使用一次然後離開)。

我試圖使用LZMA和LZMA2壓縮來壓縮exe文件,它什麼也沒做。

我想使代碼本身更小,有沒有辦法做到這一點?我可以減少多少?至少當涉及到網絡庫時。

PS:我不想使用UPX或這樣的應用程序。

回答

4

你可以嘗試靜態鏈接;這可能會丟棄庫中未使用的代碼。但請注意,這可能會影響您在Qt開源許可下的義務;分發與LGPL許可的庫靜態鏈接的封閉源(通常爲非LGPL)應用程序與動態鏈接案例相比帶來了additional obligations。當然,如果你的應用程序是GPL或LGPL許可證本身,這是沒有問題的。

1

你可以從源碼重建Qt,跳過你不需要的位。請參閱configure options瞭解可以省略的事項列表。例如。 -no-openssl將使網絡庫變小。

+0

我建(非常)剝離的Qt版本 - qtcore和qtgui聚會,約有1.8 MB大。但我禁用了幾乎所有的東西,並使用硬核編譯器標誌。 –

相關問題