前期准备:
由于我的win10系统已经安装了vs2019和qt5.14,因此在此基础上我再安装python3.8就可以了。
目录结构介绍:
Qt5.14安装在系统的以下目录:
编译Qt5.15的目录结构如下图所示:
创建QT-5.15文件夹,在该文件夹中分别创建mingw32,msvc_32,msvc_64文件夹,分别用来存放mingw32位,msvc32位,msvc64位编译出来的库,src文件夹中用来存放源码
使用msvc2017 32位编译qt5.15源码
修改源码qt-everywhere-src-5.15.0\qtbase\mkspecs\common\msvc-desktop.conf配置
将
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MD
QMAKE_CFLAGS_DEBUG = -Zi –MDd
改为
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MT
QMAKE_CFLAGS_DEBUG = -Zi -MTd
D的意思是动态编译(dynamic link),T的意思是静态编译(static link)。
打开msvc编译使用的终端
切换到qt源码目录
执行以下命令
configure -confirm-license -opensource -platform win32-msvc -debug-and-release -static -static-runtime -force-debug-info -opengl dynamic -prefix "E:/tool/QT-5.15/msvc_32" -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tests -no-compile-examples -nomake examples
(PS:如果编译动态库,则执行以下命令:
configure -confirm-license -opensource -platform win32-msvc -debug-and-release -shared -force-debug-info -opengl dynamic -prefix "E:/tool/QT-5.15/msvc_32" -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tests -no-compile-examples -nomake examples
不需要修改静态库提到的配置文件
)
执行完毕如下图所示:
执行完成后输入nmake(此过程执行时间较长)
执行完成后输入nmake install
将msvc32位编译好的库添加到qtCreator
打开qtcreator-》工具-》选项-》kit
然后
最后点击ok按钮就可以了。
使用mingw编译qt5.15源码
(磁盘预留空间需要将近75G左右,编译安装完成需要大概30.8G,如下图所示
)
先配置环境
创建一个脚本文件名为build_env.bat
以下内容复制到该脚本文件中
set PATH=C:\Qt\Qt5.14.1\Tools\mingw730_32\bin;C:\Qt\Qt5.14.1\Tools\mingw730_32\opt\bin;E:\tool\QT-5.15\src\qt-everywhere-src-5.15.0\gnuwin32\bin;C:\WINDOWS\System32;C:\WINDOWS
set LANG=en
set QT_INSTALL_PREFIX= E:\tool\QT-5.15\mingw_32
cmd /k
双击该build_env.bat文件,显示如下
接着在此打开的终端中切换文件夹到qt5.15源码文件夹中,在源码文件夹建一个build文件夹,切换到build文件夹中,然后执行
..\configure.bat -confirm-license -opensource -platform win32-g++ -debug-and-release -static -static-runtime -force-debug-info -opengl dynamic -prefix "E:/tool/QT-5.15/mingw_32" -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tests -no-compile-examples -nomake examples
(PS:如果需要编译动态库,则执行以下命令:
configure.bat -confirm-license -opensource -platform win32-g++ -debug-and-release -static -static-runtime -force-debug-info -opengl dynamic -prefix "E:/tool/QT-5.15/mingw_32" -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tests -no-compile-examples -nomake examples
)
执行完毕如下图所示:
然后输入mingw32-make 执行。
此过程执行时间较长
执行完成如下图所示:
然后执行mingw32-make install
执行完毕如下图所示
在执行mingw32-make过程中可能遇到以下错误:
报错解决:
添加环境变量
C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\wbem
build_env.bat文件内容
set PATH=C:\Qt\Qt5.14.1\Tools\mingw730_32\bin;C:\Qt\Qt5.14.1\Tools\mingw730_32\opt\bin;E:\tool\QT-5.15\src\qt-everywhere-src-5.15.0\gnuwin32\bin;C:\WINDOWS\System32;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\wbem;C:\WINDOWS
set LANG=en
set QT_INSTALL_PREFIX= E:\tool\QT-5.15\mingw_32
cmd /k
将mingw32位编译好的库添加到qtCreator
打开qtcreator-》工具-》选项-》kit
然后