[Interest] Qt .dlls size reduction

Gunnar Roth gunnar.roth at gmx.de
Fri Aug 7 16:01:15 CEST 2015


Hi Jérôme.

You can compile qt without icu at all, simply do not pass -icu to configure.
If raphael needs to use QtWebkit, all dll size reductions will be much less effective percentage wise.
Regards,
Gunnar Roth


> Am 07.08.2015 um 22:48 schrieb Jérôme Godbout <jerome at bodycad.com>:
> 
> "I have task to reduce the size of an installer of an application from my company"
> 
> Do you mean the installer itself or the installed program?
> 
> Anyway you may want to take a look at the fat icudt5X.dll, this can easily be compressed with something like UPX http://upx.sourceforge.net/ <http://upx.sourceforge.net/>
> This could save you some space. Another big one are QtWebKit (depending on the Qt version).
> 
> If you generate an .msi (with Wix, InstallShield or the like) try to turn on the compression to reduce the .msi file size.
> 
> On a third note, use Dependency Walker http://www.dependencywalker.com/ <http://www.dependencywalker.com/> to find the only needed dll for your application and avoid packaging the other.
> 
> Jerome
> 
> On Fri, Aug 7, 2015 at 9:37 AM, Mike Chinander <chinander at gmail.com <mailto:chinander at gmail.com>> wrote:
> Are you including only the minimal set of Qt dlls needed for your application?
> 
> On Fri, Aug 7, 2015 at 8:31 AM, Rafael Machado <rafaelrodrigues.machado at gmail.com <mailto:rafaelrodrigues.machado at gmail.com>> wrote:
> Hi everyone
> 
> This is my first question on this mail list, so sorry for possible trivial questions.
> 
> I have task to reduce the size of an installer of an application from my company.
> What I checked is that the qt dlls that we use are kind of big, so my idea was to try to reduce these dlls sizes.
> 
> To do it I have compiled qt removing several modules that we don't use. Something like:
> 
> configure -release -confirm-license -opensource -nomake examples -nomake tests -no-evdev -no-mtdev -no-inotify -no-system-proxies -no-fontconfig -no-harfbuzz -no-plugin-manifests -no-ssl -no-openssl -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug -no-directwrite -no-direct2d -no-native-gestures -no-style-windows -no-style-windowsxp -no-style-windowsvista -no-style-fusion -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtdoc -skip qtdocgallery -skip qtfeedback -skip qtlocation -skip qtmacextras -skip qtmultimedia -skip qtrepotools -skip qtscript -skip qtsensors -skip qtserialport -skip qtsvg -skip qttools -skip qttranslations -skip qtwayland -skip qtwebengine -skip qtwebkit -skip qtwebkit-examples -skip qtwinextras -skip qtx11extras
> 
> After doing this, the qtcore.dll was reduced from 4.928.000 bytes to 4.617.728 bytes.
> 
> I have checked at the documentation, and there are some options to remove some features from the packages. For example, in case, we don't need the feature UDPSOCKET for example, so adding to the configuration command the option -no-feature-UDPSOCKET should remove unneeded things. (Features found at C:\cygwin\home\.............\qtbase\src\corelib\global\qfeatures.txt)
> 
> The problem is that the option to remove features seems to be available just for linux-embedded and not for the windows version of qt.
> Is my understanding correct ?
> 
> The last question. Is if is there any other option to try to reduce the .dll sizes ?
> 
> Thanks for the help.
> 
> Thanks and Regards
> Rafael R. Machado
> 
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org <mailto:Interest at qt-project.org>
> http://lists.qt-project.org/mailman/listinfo/interest <http://lists.qt-project.org/mailman/listinfo/interest>
> 
> 
> 
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org <mailto:Interest at qt-project.org>
> http://lists.qt-project.org/mailman/listinfo/interest <http://lists.qt-project.org/mailman/listinfo/interest>
> 
> 
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20150807/de7dcd24/attachment.html>


More information about the Interest mailing list