1.下载Qt5.5.1源码, 下载地址http://www.qt.io/cn/download-open-source/, 选择适合自己的版本
2.解压, 比如放在目录D:/QT-OpenSource-src下. 进入此目录, 新建.bat文件,假定命名为 vs2013BuildQT.bat, 内容如下:
call "D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat" configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix "D:\QT\QT-5.5.1-Static-Lib" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples
"D:\QT\QT-5.5.1-Static-Lib"是你最后编译完成之后,要安装到的位置;
参数-static指定编译静态版本,不加static则默认编译动态库版本;
call那一句是加载编译器环境,此处是编译windows32位版本,如果要编译其他版本,则可以进入**\VC\bin\目录下的相应目录,如amd64,arm...然后选择相应的.bat文件
3.打开D:/QT-OpenSource-src/qtbase/mkspecs/common/msvc-desktop.conf,低版本的可能是D:/QT-OpenSource-src/qtbase/mkspecs/win32-msvc201*/qmake.conf
修改这三处:
QMAKE_CFLAGS_RELEASE = -O2 -MD QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi QMAKE_CFLAGS_DEBUG = -Zi -MDd
-MD(动态链接库);-MT(静态链接库);-MDd(动态链接库调试版本)
因此将-MD,-MDd改成-MT,-MTd就可以编译QT静态库了.编译动态库则不需要修改
4.运行CMD,输入
D:
cd QT-OpenSource-src/
vs2013BuildQT.bat
nmake
make install
nmake和make install可能需要比较长时间, 慢慢等吧