Qt 5.1.1 应用程序打包

Qt 5.1.1打包居然比4.8.x版本多出好多DLL文件。Qt 5增加icu和opengl支持,导致DLL体积激增。下面是Qt 5.x程序打包需要的DLL文件。

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

    程序exe文件只有200KB,但DLL文件足足占了仅40MB,比Qt 4增加太多。