首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CMake找不到Visual Studio 15 2017生成器的实例,但可以与Visual Studio 16 2019配合使用

基础概念

CMake是一个跨平台的开源构建系统,用于自动化软件的编译过程。它生成特定于平台的构建文件(如Makefile、Visual Studio项目文件等),以便开发者可以使用不同的编译器和工具链进行构建。

问题描述

你遇到的问题是CMake无法找到Visual Studio 15 2017生成器的实例,但可以与Visual Studio 16 2019配合使用。

原因分析

  1. 安装问题:Visual Studio 15 2017可能没有正确安装或某些组件缺失。
  2. 环境变量问题:系统环境变量可能没有正确配置,导致CMake无法找到Visual Studio 15 2017的生成器。
  3. 路径问题:CMake的搜索路径可能没有包含Visual Studio 15 2017的安装路径。

解决方法

1. 检查Visual Studio 15 2017的安装

确保你已经正确安装了Visual Studio 15 2017,并且安装了“Desktop development with C++”工作负载。

2. 配置环境变量

确保以下环境变量已经正确设置:

  • VS150COMNTOOLS:指向Visual Studio 15 2017的Common7\Tools目录。
  • PATH:确保包含了Visual Studio 15 2017的bin目录。

例如,在Windows上,你可以手动添加这些环境变量:

代码语言:txt
复制
set VS150COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools
set PATH=%PATH%;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64

3. 指定生成器

在运行CMake时,显式指定Visual Studio 15 2017生成器:

代码语言:txt
复制
cmake -G "Visual Studio 15 2017" -A x64 .

4. 检查CMake版本

确保你使用的CMake版本支持Visual Studio 15 2017生成器。较旧的CMake版本可能不支持较新的Visual Studio版本。

示例代码

假设你有一个简单的CMakeLists.txt文件:

代码语言:txt
复制
cmake_minimum_required(VERSION 3.10)
project(MyProject)

add_executable(MyProject main.cpp)

你可以使用以下命令进行构建:

代码语言:txt
复制
cmake -G "Visual Studio 15 2017" -A x64 .
cmake --build . --config Release

参考链接

通过以上步骤,你应该能够解决CMake找不到Visual Studio 15 2017生成器的问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CMake构建学习笔记16-使用VS进行CMake项目的开发

从Visual Studio 2017开始,Microsoft Visual Studio(简称VS)就开始支持CMake工程的导入。...不过麻烦就麻烦在这里,CMakePresets.json是CMake 3.20引入的,是个相对较新的功能,Visual Studio 2019并没有一开始就对接这个配置文件,而是使用自己设计的CMakeSettings.json...目前,这两种配置文件Visual Studio 2019都支持,但是更推荐使用CMakePresets.json,因为更加标准化,符合CMake的规范,可以被多种IDE和构建工具识别和支持。...总结 好了,使用Visual Studio 2019进行CMake项目的开发的步骤和注意事项就是以上内容了。...如果有试用的读者欢迎进行留言,看看与Visual Studio 2019对比有哪些区别或者提升。

51910
  • obs windows 编译和打包

    我这里使用的是 obs-studio-25.0.1 下载并安装 cmake https://cmake.org/download/ 注:obs 新版本源码还对 cmake 版本有要求,如 obs-studio...cmake-gui 32位的操作如下: 设置源码目录 C:\Users\Administrator\Desktop\xiaoshiwei\obs-studio 设置编译后的二进制目录 C:\Users...\msvc2017 执行配置,选择 Visual Studio 15 2017 win32,(这个步骤如果没有安装 win10 sdk 是会失败的,可以看失败提示) 64 位的操作如下: 设置源码目录...,选择 Visual Studio 15 2017 x64,(这个步骤如果没有安装 win10 sdk 是会失败的,可以看失败提示) 注:这里也能可以通过设置系统环境变量(我的电脑-》属性-》高级系统设置...\Qt5WebEngineWidgets 执行生成 打开项目,将自动打开已经生成好的 Visual Studio 工程文件 使用 vs 编译 ALL_BUILD 工程,编译好后提示 ==========

    1.7K40

    我个人中意的VS2017VS2019插件,推荐给大家(#^.^#)

    Open in Editor 2017 – Visual Studio Marketplace Image Watch:OpenCV可视化界面插件,确保VS使用的是debug模式,并且在适当的位置设置的断点...VS2019 Image Watch 2019 – Visual Studio Marketplace ForceUTF8 (with BOM) 文件统一使用UTF-8+BOM编码 C++ Debugger...Marketplace GhostDoc Community for VS2017 : 从代码生成XML注释,维护干净和最新的文档,生成多种格式的帮助文档,在Visual Studio中使用智能源代码拼写检查器...Visual Studio 2017 版本 15.9 发行说明 Visual Studio 2017 15.9 发行说明 | Microsoft Docs Visual Studio 较旧的下载 – 2019...、2017、2015 和以前的版本 Visual Studio 2019 发行说明 Visual Studio 2019 版本 16.11 发行说明 | Microsoft Docs Microsoft

    4K20

    Pytorch的C++端(libtorch)在Windows中的使用

    Studio自带的编译器,为此我们需要安装: Visual Studio 2015或者2017(两个都测试过,都是可以的!)...的位置信息,然后这里我选择-G"Visual Studio 14 Win64"执行编译器是VS2015的编译工具,如果是2017的话就是-G"Visual Studio 15 Win64这里根据自己的需要进行调整...(如果使用VS2017别忘了修改OpenCV中的vc14为vc15)。...如果你的电脑装有两个版本以上的Visual Studio,那么这里要注意如果我们之前使用VS15编译的话那么就要使用VS15去打开这个文件,也就是之前编译使用的工具和之后打开工程的版本应该一致 打开后大概是这样子的...: cmake -G CMake Error: No generator specified for -G Generators Visual Studio 15 2017 [arch] = Generates

    1.1K40

    Cplus_libs_wrapper-一些关于C++的常用功能的接口实现

    所有示例均已使用以下编译器进行了测试:Microsoft Visual Studio Professional 2013更新1(带有Service Pack 1的64位Windows 7 Professional...C2440 VC++ libcurl FTP上传客户端程序 CentOS7.8下编译muduo库找不到Boost库报错的解决方法 Windows下使用VS2013编译使用SDL库 在Windows10中...Visual Studio2017中使用boost1.69.0 在CentOS 6.5上构建Apache Thrift 使用rapidJson C++库生成JSON字符串 CentOS7下编译yaml-cpp...库 Windows10下使用VS2017编译和使用yaml-cpp库 Windows下使用VS2019和CMake 3.18.3编译使用yaml-cpp库 9、一些C++的构建工具:CMake、Makefile...这个库在Windows下Visual Studio环境下还是比较好用的,就是从2011年后就好久没更新过了。

    2.1K20
    领券