CLion 默认可直接使用 Bundled MinGW(MinGW-w64 13.1,x86_64-posix-seh)编译运行项目;常见问题包括工具链检测失败(感叹号)、编译失败,主因是CMake或TEMP/TMP路径含中文、第三方MinGW缺gcc-g++包、架构不匹配或GDB无Python支持。

CLion 默认能直接用 Bundled MinGW,不用额外装 MinGW 就能编译运行 C/C++ 项目。但很多人点开设置后找不到路径、报感叹号、或者编译失败,问题通常出在工具链识别或路径中文上。
为什么 CLion 找不到 MinGW 编译器
最常见原因是:CLion 检测不到 gcc 或 g++ 可执行文件。这不一定是你没装对,而是:
- 用了第三方打包的“精简版”MinGW,缺
mingw32-gcc-g++或mingw64-gcc-g++包 - 安装时选了错误架构(比如默认 32 位,但 CLion 项目设为 64 位)
- 路径含中文(用户目录名是中文、临时文件夹
TEMP/TMP含中文),导致CMake初始化失败,连带工具链标感叹号 - CLion 捆绑的 MinGW-w64 13.1 是
x86_64-posix-sehABI,若你手动装的是sjlj或ucrt版本,GDB 调试可能卡住或崩溃
怎么正确配置 Bundled MinGW 工具链
不用下载安装任何东西,直接启用 CLion 自带的 MinGW:
- 打开
File | Settings | Build, Execution, Deployment | Toolchains - 点击
+→ 选择MinGW -
Toolset下拉框里选Bundled MinGW(这是默认项,别手滑改成空或自定义路径) -
Debugger保持默认的Bundled GDB(它内置 Python 支持,用于变量渲染;自己装的 GDB 很可能没开 Python) - 点
Apply,等待右下角提示 “Tools detection finished”
如果此时仍显示感叹号,先检查 CMake 路径是否含中文——CLion 自带的 CMake 若放在 C:\Users\张三\AppData\... 这类路径下,CMake 会静默失败。解决方法是:单独下载官方 cmake-3.28.3-windows-x86_64.msi,装到 C:\CMake\,然后在 Settings | Build, Execution, Deployment | CMake 中指定该路径。
用自定义 MinGW-w64 时要注意什么
如果你坚持用自己装的 MinGW(比如从 mingw-w64.org 或 MSYS2 安装),必须确认三点:
- 安装包必须包含:
gcc、g++、gdb、make(MSYS2 用户请只用mingw64子系统,别混ucrt64或clang64) - 路径不能有空格和中文,例如
C:\mingw64\可以,C:\Program Files\mingw或C:\我的编译器不行 - 在
Toolset字段中选中你的安装根目录(如C:\mingw64),CLion 会自动找bin\gcc.exe;若找不到,说明 bin 目录下没有gcc.exe或名字被改过(有些发行版叫x86_64-w64-mingw32-gcc.exe,这时得用符号链接或换发行版)
特别注意:MSVC 和 MinGW 不能共存于同一工具链配置中。CLion 允许项目级切换,但一个 Toolchain 实例只能绑定一种 ABI。
调试时 GDB 报错或无法查看变量
典型现象是断点命中但变量窗口空白、或控制台输出 Python Exception <class> No module named 'libstdcxx'</class>:
- 这不是代码问题,是 GDB 缺 Python 渲染模块 —— 所以务必用
Bundled GDB,不要用 MinGW 自带的gdb.exe - 若你非要用自定义 GDB,请确保它编译时启用了
--with-python,且libstdcxxPython 脚本路径已加入sys.path - Windows ARM64 用户注意:
Bundled GDB当前仅支持远程调试,本地调试会直接失败,别浪费时间排查
真正容易被忽略的,是 TEMP 和 TMP 环境变量路径里的中文——它不会报错,但会让 CMake 缓存生成失败,进而让整个工具链检测卡在“pending”状态,且没有任何提示。


















