clion本身不带编译器,必须手动配置外部c++工具链;推荐msys2+mingw64而非msvc,因其轻量、更新及时、abi稳定且clion原生识别率高,安装需用msys2 mingw64终端执行pacman -s mingw-w64-x86_64-gcc等命令,路径须无中文空格,clion中toolchain配置需指定mingw64根目录并测试gcc/gdb版本。

CLion 本身不带编译器,必须手动配置外部 C++ 工具链才能编译运行代码;没配对 toolchain,新建项目会卡在“Select toolchain”或运行时直接报 No toolchain configured 错误。
选 MinGW64 还是 MSVC?Windows 下推荐 MSYS2 + MinGW64
Visual Studio 的 MSVC 虽然兼容性好,但安装包大(数 GB)、更新慢、与 CLion 的 CMake 集成偶有调试符号丢失问题;而 MSYS2 提供的 mingw-w64-x86_64-gcc 更轻量、更新及时、ABI 稳定,且 CLion 原生识别率高。关键点:
- 必须用
MSYS2 MinGW64终端安装,不是MSYS或UCRT64—— 混用会导致gdb找不到符号或cmake报unknown architecture - 安装路径不能含中文、空格、特殊字符(如
D:\msys64✅,C:\Program Files\msys2❌) - 装完后务必在
MSYS2 MinGW64终端里执行:pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-gdb mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja
CLion 里怎么填对 Toolchain 设置
进 Settings → Build, Execution, Deployment → Toolchains,点 + → MinGW,然后重点填三项:
-
Environment:选你解压/安装 MSYS2 的根目录(如D:\msys64\mingw64),不是D:\msys64 -
C Compiler:自动填为D:\msys64\mingw64\bin\gcc.exe,别手抖改成g++.exe -
C++ Compiler:对应填D:\msys64\mingw64\bin\g++.exe,Debugger会自动匹配gdb.exe
填完别急着点 OK —— 先点右下角 Test 按钮,确认显示 gcc version x.x.x 和 gdb version x.x.x,否则后续新建项目会静默失败。
新建 C++ 项目时工具链选错的典型表现
创建新项目时若 Toolchain 下拉为空或只显示 Auto-detected 却无法展开,说明 CLion 没识别到你刚配的路径;常见原因:
- 路径末尾多加了
\bin(比如填成D:\msys64\mingw64\bin)—— CLion 会自己拼\bin\gcc.exe,多写就找不到 - 系统环境变量 PATH 里混进了其他 MinGW(比如旧版 TDM-GCC 或 Cygwin),CLion 自动探测时优先用了错误版本
- CLion 缓存未刷新:关掉软件,删掉
%USERPROFILE%\.CLion202X.X\system\caches再重开
如果项目已建好但编译报 undefined reference to `WinMain',大概率是工具链 ABI 不匹配(比如用了 UCRT64 的库链接 MinGW64 的可执行文件),这时只能删项目重来,别试图硬改 CMakeLists.txt。
中文路径和编码问题最容易被忽略
CLion 启动时报 Failed to load JVM DLL 或配置脚本执行失败,90% 是因为补丁/配置目录含中文;C++ 源码里写中文字符串却输出乱码,不是 IDE 设置问题,而是 MinGW64 默认用 UTF-8,但 Windows 控制台默认 GBK —— 解决方法只有两个:
- 在
Run → Edit Configurations → Environment variables里加CHCP 65001(临时切 UTF-8) - 或者更稳妥:在
CMakeLists.txt顶部加set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -municode")并确保源文件保存为 UTF-8 with BOM
这两处不处理,哪怕编译通过,std::cout 也会输出问号或崩溃。
C++免费学习笔记(深入):立即使用
在学习笔记中,你将探索 C++ 的入门与实战技巧!











