Qt 5.1.1 应用程序打包
Qt 5.1.1打包居然比4.8.x版本多出好多DLL文件。Qt 5增加icu和opengl支持,导致DLL体积激增。下面是Qt 5.x程序打包需要的DLL文件。
- Qt模块
一般需要core、gui、widgets等模块,所以需要
- Qt5Core.dll
- Qt5Gui.dll
- Qt5Widgets.dll
- OpenGL支持
Qt 5支持QpenGL,所以需要包含openGL库:
- libEGL.dll
- libGLESv2.dll
- icu支持
Qt 5需要icu的DLL库,直接导致DLL体积增大。需要:
- icudt51.dll
- icuin51.dll
- icuuc51.dll
- 编译器
我使用的是Qt官方发布的Qt 5.1.1 VS2010 x86版本,所以需要vc2010 x86编译器的运行时库:
- msvcp100.dll
- msvcr100.dll
- 平台相关插件
个人认为这是Qt 5与Qt 4的最大区别,Qt 4不需要这个,但Qt 5将平台相关功能封装成插件形式,我还得去仔细研究下为什么要这么做。需要在程序可执行文件的目录下包含如下结构
–platforms
|–qwindows.dll - 应用程序用到的非QT的DLL库
其他的DLL库根据程序而定。
示例:我写的一个小程序封装后的目录如下图所示:
程序exe文件只有200KB,但DLL文件足足占了仅40MB,比Qt 4增加太多。