如何修改MinGW编译器的C++版本以编译Qt5.15源码
解决MinGW编译Qt5.15时C++版本过低的问题
方法一:在configure命令中直接指定C++标准
执行configure时,添加-std=c++11(或更高版本如c++14、c++17)参数来强制指定C++标准,示例命令如下:
configure -prefix D:\Qt5.15_MinGW -opensource -confirm-license -platform win32-g++ -std=c++11
注:其他configure参数可根据你的实际需求调整(比如安装路径、开源协议确认等),核心是加上
-std=c++xx指定符合要求的C++标准。
方法二:修改MinGW的默认C++标准配置
如果不想每次执行configure都手动加参数,可以修改MinGW的全局默认配置:
- 找到MinGW安装目录下的
lib\gcc\mingw32\你的版本号\include\c++\mingw32\bits文件夹(路径中的版本号需替换为你实际安装的MinGW版本,比如8.1.0) - 打开
c++config.h文件,找到类似如下的代码行:#define __cplusplus 199711L - 将其修改为对应C++标准的宏值:
- C++11:
#define __cplusplus 201103L - C++14:
#define __cplusplus 201402L - C++17:
#define __cplusplus 201703L
- C++11:
- 保存文件后,重新执行configure命令即可。
注意:修改全局配置会影响所有使用该MinGW编译的项目,若你还有依赖旧C++标准的项目,建议优先使用方法一。
内容的提问来源于stack exchange,提问作者NejoFS
相关产品推荐
相关产品推荐

