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

在Visual Studio 2019中构建C++项目时遭遇CMake错误:No CMAKE_C_COMPILER could be found

在Visual Studio 2019中构建C++项目时遭遇CMake错误:No CMAKE_C_COMPILER could be found

看起来你遇到的核心问题是CMake没法找到Visual Studio的C/C++编译器,连带导致后续MSBuild找不到项目文件。咱们一步步来解决:

首先排查Visual Studio 2019的安装组件

CMake找不到编译器最常见的原因是你没装VS的C++开发工具链。你可以这么检查:

  • 打开Visual Studio Installer,找到你的VS2019实例,点击「修改」
  • 确保勾选了**「使用C的桌面开发」**这个工作负载——它包含了MSVC编译器、必要的构建工具和Windows SDK,是编译C项目的基础
  • 另外,确认对应你系统版本的Windows 10 SDK(比如你日志里的10.0.19044)已经被勾选安装
  • 点击「修改」等待组件安装完成,之后再重试构建

用正确的命令行环境运行CMake

普通的Windows命令提示符不会自动加载VS的编译环境变量,CMake自然找不到编译器。你应该用VS自带的专用命令行:

  • 打开「开始菜单」,找到Visual Studio 2019文件夹,选择**「x64 Native Tools Command Prompt for VS 2019」**(如果要编译32位程序就选x86版本)
  • 在这个命令行里,再执行你原来的构建步骤:
    mkdir build
    cd build
    cmake .. -G "Visual Studio 16 2019"
    cmake --build .
    
    这个命令行已经帮你配置好了所有必要的环境变量,CMake就能顺利找到编译器了

顺便优化下你的CMakeLists.txt(非紧急,但更规范)

虽然不是当前错误的原因,但有个小细节可以调整:add_library里不需要把.h头文件加进去,CMake会通过target_include_directories自动处理头文件路径。修改成这样更规范:

add_library(MyLibrary SHARED src/setup.cpp)

另外你遇到的MSBuild错误(找不到ALL_BUILD.vcxproj),其实是因为第一步CMake配置失败,根本没生成项目文件。解决了编译器的问题后,这个错误会自动消失。

备注:内容来源于stack exchange,提问作者El_Merendero

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 15:08:09