QT5.8 VS2017 编译教程(可以使用VS2017 XP兼容包)
1、下载QT5.8源码
这个我不做过多解释。
2、安装使用的环境
visual studio 2017 Python Perl Ruby 安装好,并配置好环境PATH变量。
3、修改错误代码
错误一:qtbase\src\plugins\generic\tuiotouch\qtuiohandler.cpp 包含了非ASCII字符,需要另存一个带BOM的UTF-8编码文件,替换原文件。否则编译会报错。建议使用notepad++修改。
错误二:修改 qtbase/src/corelib/tools/qalgorithms.h。因为要修改位置太多,我直接给出源码包。
qalgorithms补丁包,或者qalgorithms.zip
4、如果你选择动态编译动态编译,请使用下面configure
- configure -developer-build -mp -confirm-license -opensource -debug-and-release -force-debug-info -prefix "C:\Qt\msvc2017_dynamic" -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tests -nomake examples
接着,完成之后执行namke 再 nmake install,时间有点长,慢慢等着吧。
5、如果你选择静态版本,请看下面的步骤。
再根据你安装的Qt版本进入相应的文件夹下,C:\Qt\qt-everywhere-opensource-src-5.8.0\qtbase\mkspecs 。我这里是win32-msvc2017。进去之后,你会发现有一个qmake.conf文件。打开它。在qmake.conf文件在,你会发现一个include,请根据include中的路径,找到对应文件并打开。
找到以下标志
- QMAKE_CFLAGS_RELEASE = -O2 -MD
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
- QMAKE_CFLAGS_DEBUG = -Zi -MDd
修改成下面
- QMAKE_CFLAGS_RELEASE = -O2 -MT
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi
- QMAKE_CFLAGS_DEBUG = -Zi -MTd
修改好之后,运行configure
- configure -mp -confirm-license -opensource -release -static -force-debug-info -prefix "C:\Qt\msvc2017_static" -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tests -nomake examples
为了加快编译时间 我只编译了release版本,大家可以根据自己需要选择。
configure 完成之后,运行nmake nmake install 就ok了。
https://www.liberobk.com/cpp/228.html