PDA

View Full Version : qwindows platform plugin with minimal dependencies?



cmb
24th July 2015, 00:18
Is it possible to eliminate runtime (DLL) dependencies of the qwindows platform plugin by configuring Qt differently? For example, if I build Qt using -no-freetype -no-iconv -no-harfbuzz then my main executable no longer has those DLLs as dependencies, but qwindows.dll still does.

I'm trying to do a minimal build to reduce the set of DLLs that I need to distribute. I did this previously when building with MinGW under Windows, and I was able to get the set down to this:

libgcc_s_dw2-1.dll
libstdc++-6.dll
libwinpthread-1.dll
platforms/qwindows.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dll

But now I'm cross-compiling with the M Cross Environment (mxe) from Linux, and I can't seem to reduce the set from this:

libbz2.dll
libfreetype-6.dll
libgcc_s_sjlj-1.dll
libglib-2.0-0.dll
libharfbuzz-0.dll
libiconv-2.dll
libintl-8.dll
libpcre16-0.dll
libpcre-1.dll
libpng16-16.dll
libstdc++-6.dll
platforms/qwindows.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dll
zlib1.dll

...where several of those are dependencies of the qwindows platform plugin, not my main executable. Anyone know how to fix this?

--Colin

cmb
26th July 2015, 21:39
I think I've found the solution. Almost all of the superfluous dependencies were a result of Freetype support, which was needed by the qwindows plugin. When I configured Qt with '-qt-freetype', it switched to the built-in Freetype lib and removed those dependencies.