MinGW 编译 static Qt

  1.  MinGW 编译 static icu4c (QtWebkit 依赖)
    1. 下载 icu4c (http://site.icu-project.org/, http://sourceforge.net/projects/icu/, icu4c-XXX-src.zip)
    2. 下载安装 MYSYS2 (https://wiki.qt.io/MSYS2)
    3. 在 MYSYS2 shell 中 cd 到 icu4c source 目录并进行配置与编译
      ./runConfigureICU MinGW --prefix=/d/icu541-mingw492 --enable-static --disable-shared
      mingw32-make
      mingw32-make install
      
    4. 添加 include 目录及其内的 .h 文件所在目录 (layout, unicode) 到系统环境变量 CPLUS_INCLUDE_PATH
    5. 添加 lib 目录到系统环境变量 LIBRARY_PATH
  2. 安装 Direct X SDK (ANGLE 依赖, QtWebkit 依赖 ANGLE)
    1. 下载 Direct X SDK (http://www.microsoft.com/en-us/download/details.aspx?id=6812)
    2. 添加 Include 目录到系统环境变量 CPLUS_INCLUDE_PATH
    3. 添加 Lib/x86 目录到系统环境变量 LIBRARY_PATH
  3. 安装 Python, Perl, Ruby
    1. 下载安装 Python 并将安装目录添加到环境变量 PATH 中 (https://www.python.org/)
    2. 下载安装 ActivePerl 并将安装目录添加到环境变量 PATH 中 (http://www.activestate.com/activeperl)
    3. 下载安装 Ruby 并将安装目录添加到环境变量 PATH 中 (http://rubyinstaller.org/)
  4. 安装 GnuWin32 中相关工具 (QtWebkit 与 ANGLE 需要)
    1. GnuWin32 Packages 地址 http://gnuwin32.sourceforge.net/packages.html
    2. 安装需要的工具(安装路径中不要包含空格等特殊字符): Bison, Gperf, Flex (或win_flex)
    3. 添加 GnuWin32/bin 目录到系统环境变量 PATH
    4. 如后续编译时提示 "'win_flex' 不是内部或外部命令..." 则安装 win_flex 并添加到环境变量 PATH 中 (http://sourceforge.net/projects/winflexbison/)
  5. (static MySQL 驱动可选) 安装 MySQL
    1. 下载安装 MySQL Community Server (https://dev.mysql.com/downloads/mysql/)
    2. 添加 MySQL Server XX/include 目录到系统环境变量 CPLUS_INCLUDE_PATH
    3. 添加 MySQL Server XX/lib 目录到系统环境变量 LIBRARY_PATH
  6. 修改 qmake.conf
    1. 在 Qt Src 目录下的 qtbase/mkspecs/win32-g++/qmake.conf 文件末尾添加:
      # [QT-STATIC-PATCH]
      QMAKE_LFLAGS += -static -static-libgcc
      QMAKE_CFLAGS_RELEASE -= -O2
      QMAKE_CFLAGS_RELEASE += -Os -momit-leaf-frame-pointer
      DEFINES += QT_STATIC_BUILD
      
  7. 编译 Qt
    1. 启动设置了 Ruby 环境的 cmd (Start Command Prompt with Ruby)
    2. cd 到 Qt Src 目录并执行 configure
      configure -static -release -platform win32-g++ -prefix D:/Qt5.5.0-MinGW4.9.2-static -icu -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -qt-freetype -opengl desktop -qt-sql-sqlite -qt-sql-mysql -no-openssl -make libs -nomake tools -nomake examples -nomake tests -c++11
      
    3. 编译安装 Qt
      mingw32-make -k -j4
      mingw32-make -k install
      

MinGW 编译 static Qt》上有1条评论

发表评论

电子邮件地址不会被公开。