You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Win11下VSCode使用CMake时无法确定生成器的解决咨询

问题描述

在空文件夹通过快速启动命令创建新项目(仅含CMakeLists.txt和main.cpp),执行Configure、Edit Cache命令时出现以下错误:

[proc] The command: ninja --version failed with error: Error: spawn ninja ENOENT
[proc] The command: ninja-build --version failed with error: Error: spawn ninja-build ENOENT
[proc] The command: make --version failed with error: Error: spawn make ENOENT
[main] Unable to determine what CMake generator to use. Please install or configure a preferred generator, or update settings.json, your Kit configuration or PATH variable. Error: No usable generator found.

已尝试操作:

  • 重装GCC
  • 安装MSYS2并通过Pacman安装GCC、g++和CMake
  • 重置CMake Tools扩展
  • 编辑系统PATH变量
  • 将cmake.cmakePath修改为Pacman安装路径(C:\msys64\mingw64\bin\cmake.exe)
可行解决方法

1. 安装并配置Ninja构建工具

  • 打开MSYS2的MinGW64终端,执行pacman -S ninja完成安装
  • 确认C:\msys64\mingw64\bin已添加到系统PATH的最优先级位置(避免其他路径的同名工具干扰)
  • 重启VS Code使PATH变更生效

2. 手动指定CMake生成器

在VS Code的settings.json中添加配置,直接指定生成器:

// 使用MinGW Makefiles
"cmake.generator": "MinGW Makefiles"
// 若已安装Ninja,可改为:
// "cmake.generator": "Ninja"

3. 从MSYS2终端启动VS Code

通过MinGW64终端启动VS Code,让编辑器继承MSYS2的完整环境变量:

  1. 打开MSYS2 MinGW64终端
  2. 进入项目文件夹,执行code .启动VS Code

4. 验证工具可访问性

在系统CMD或PowerShell中执行以下命令,确认工具能被正常调用:

ninja --version
mingw32-make --version
cmake --version

若某命令报错,说明对应工具未安装或PATH配置错误,需重新安装工具并调整PATH。

5. 手动配置CMake Kit

打开VS Code命令面板(Ctrl+Shift+P),执行CMake: Select a Kit选择对应MinGW64套件;若无可用套件,执行CMake: Scan for Kits重新扫描,或手动在settings.json中添加:

"cmake.kits": [
    {
        "name": "MinGW64",
        "compilers": {
            "C": "C:/msys64/mingw64/bin/gcc.exe",
            "CXX": "C:/msys64/mingw64/bin/g++.exe"
        },
        "cmakePath": "C:/msys64/mingw64/bin/cmake.exe"
    }
]

内容的提问来源于stack exchange,提问作者Matthew L

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 23:34:51