之前由于在工作电脑上随意装qt不同版本,导致原有的静态qt不能正常工作。近日又费时费力从新编译静态qt。将过程记录如下,用于感谢之前博客中获取的帮助。
也可以借鉴这个链接Qt 5.14.2 静态编译安装 (Win10平台)_51CTO博客_qt源码编译安装
不废话,开始干。静态编译qt方法很多,我这一次的做法是:
1: 下载 qt-everywhere-src-5.10.0.zip , 连接 http://download.qt.io/archive/qt/5.10/5.10.0/single/
2: 检查电脑是否安装perl, python, 参考这位博客 Qt5.8 在windows下静态编译_Ahren.zhao的博客-CSDN博客 。切记环境变量可查
3:下载 jom, jom不用安装,直接下载解压,添加进环境变量。切记path不能太长, Jom - Qt Wiki
4:更改 qtbase\mkspecs\common\msvc-desktop.conf 中:MD 换成MT
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -MD -Zi
QMAKE_CFLAGS_DEBUG = -Zi -MDd
换成
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -MT -Zi
QMAKE_CFLAGS_DEBUG = -Zi -MTd
4:cmd到qt-everywhere-src-5.14.1
configure.bat -mp -platform win32-msvc -debug-and-release -static -force-asserts -prefix C:\QT5.14_static -static -static-runtime -silent -opengl desktop -qt-sqlite -qt-pcre -qt-zlib -qt-freetype -qt-harfbuzz -qt-libpng -qt-libjpeg -nomake examples -nomake tests
configure.bat -static -force-asserts -prefix E:\qt_static -static -static-runtime -silent -opengl desktop -qt-sqlite -qt-pcre -qt-zlib -qt-freetype -qt-harfbuzz -qt-libpng -qt-libjpeg -nomake examples -nomake tests
configure.bat -static -force-asserts -prefix E:\qt_static_5 -static -static-runtime -silent -opengl desktop -qt-sqlite -qt-pcre -qt-zlib -qt-freetype -qt-harfbuzz -qt-libpng -qt-libjpeg -nomake examples -nomake tests
5:jom
6: jom install
7:添加环境变量
ok
使用的时候,注意调整creator中选项,win32-msvc, c++编译器使用X86_x64