讲师中心 微信公众号

工具推荐

视频效率加速
立刻MV
立刻MV

低成本歌曲 MV、视频生成

剧云
剧云

中文短剧剧本制作平台

AniShort
AniShort

AI短剧协同制作平台

updream

一键生成高质量推广成片

C++怎么安装GCC编译器 Windows配置MinGW环境【指南】

陌静同学_6289

陌静同学_6289

发布时间:2026-03-04 12:44:03

|

936人浏览过

|

来源于php中文网

原创

Windows上安装GCC实为选择MinGW-w64发行版,推荐msys2或便携版winlibs;需正确配置PATH、指定C++标准(如-std=c++20)、匹配GDB与编译器版本及ABI,否则将出现命令未找到、头文件缺失、链接错误或调试失效等问题。

c++怎么安装gcc编译器 windows配置mingw环境【指南】

Windows 上直接装 GCC 就是装 MinGW-w64

Windows 本身没有 GCC,所谓“安装 GCC”实际是选一个 MinGW-w64 发行版。主流就两个:msys2(推荐)和 winlibs(便携免安装)。别碰老掉牙的 MinGW(非 -w64),它不支持 64 位默认、没 std::filesystem、连 std::format 都编译不过。

常见错误现象:g++: command not found 或 cannot find -lstdc++——基本是 PATH 没配对,或者混用了不同发行版的 bin 目录。

  • msys2 装完必须运行 mingw64.exe(不是 msys2.exe),它才加载正确的环境变量
  • 如果只想要命令行可用,用 winlibs 更省事:解压后把 mingw64\bin 加进系统 PATH 即可
  • 别把多个 MinGW 的 bin 同时加进 PATH,g++ --version 输出版本混乱就是信号

验证 GCC 是否真能编译 C++17/20 代码

很多教程说“装完就能用”,但默认 g++ 不开 C++ 标准,std::optional 一写就报错,不是环境问题,是编译参数漏了。

使用场景:写现代 C++ 项目,尤其用到 std::span、std::ranges、模块(Modules)等特性时,必须显式指定标准。

立即学习“C++免费学习笔记(深入)”;

Windows 开机自启并隐藏到系统托盘
Windows 开机自启并隐藏到系统托盘

让 Windows 桌面程序在开机时静默自启并隐藏到系统托盘。特别适用于 Flutter、Electron 等无视 VBS/ProcessStartInfo 窗口样式、难以隐藏的顽固应用。提供「VBS 启动器 + Python ctypes/Win32 API」的隐藏窗口方案,可稳定把窗口收进托盘且不闪控制台。

下载
  • 基础编译命令必须带 -std=c++17 或 -std=c++20,例如:g++ -std=c++20 main.cpp -o main
  • 用 g++ --version 看到的是 GCC 版本,不是默认 C++ 标准;GCC 11+ 默认仍是 c++14
  • 某些 IDE(如 VS Code + C/C++ 扩展)会忽略你配置的 c_cpp_properties.json 中的 "cppStandard",最终还得靠编译命令里的 -std=

PATH 配错导致头文件找不到或链接失败

典型错误信息:fatal error: bits/c++config.h: No such file or directory 或 undefined reference to `WinMain'。这不是缺库,是 g++ 找错了头文件路径或链接目标。

根本原因:Windows 下 MinGW-w64 有多个 ABI 变种(ucrt / msvcrt)、多个架构(x86_64 / i686),路径一错,include 和 lib 就全乱套。

  • 确认你用的是 ucrt 版本(推荐),它的 include 路径里有 ucrt 字样;msvcrt 版本在 Win11 上可能缺 API
  • 检查 g++ -v -E main.cpp 输出里的 #include <...> search starts here:</...> 段,看列出的路径是否对应你安装的 MinGW-w64 目录
  • undefined reference to `WinMain' 多半是你写了 int main() 却被当成了 Windows GUI 程序链接——加 -mconsole 强制控制台子系统

VS Code 或 CLion 里调试不进断点?检查 GDB 是否匹配

MinGW-w64 自带的 gdb.exe 必须和 g++.exe 来自同一发行版、同一 ABI、同一位宽,否则调试器根本读不懂符号表,断点灰掉、变量显示 <optimized out></optimized> 是常态。

性能影响:错配 GDB 不仅断点失效,单步执行可能卡死,甚至崩溃退出。

  • 用 gdb --version 和 g++ --version 对比版本号,二者主版本必须一致(如都是 13.2.0)
  • 运行 file gdb.exe 和 file g++.exe(在 msys2 终端或 Git Bash 里),确认都是 PE32+ executable (console) x86-64
  • CLion 用户注意:Settings > Build > Toolchain 里 “Debugger” 必须指向 MinGW-w64 自带的 gdb.exe,不能用系统 PATH 里别的 GDB

最常被忽略的一点:MinGW-w64 的调试信息默认用 DWARF 格式,但 Windows 原生调试器(如 VS 自带的)完全不认——你得用配套的 GDB,且不能关 -g 编译选项。

热门AI工具

更多
函子Zion

一款支持AI搭建、可视化编辑和多端发布的全栈无代码开发平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

小橡皮AI

一款AI工具,主要用于小橡皮一键去AI味,将机器味重的内容改得更有活人感,防止因为 AI 内容被平台打上 AI 标签,以及限流,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2335

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

3802

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

1256

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

4419

2025.09.10

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1849

2023.07.31

python中的format是什么意思
python中的format是什么意思

python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1231

2024.06.27

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1069

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3480

2023.10.25

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

0

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Conan 2 安装指南
Conan 2 安装指南

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn