【问题标题】:CMake problem: could not find any instance of Visual StudioCMake 问题:找不到 Visual Studio 的任何实例
【发布时间】:2020-05-20 22:01:05
【问题描述】:

我想做的事

我有一个源 SDK 文件夹,其中包含创建项目(或 .sln)所需的所有文件,包括 CMakeLists。然后我尝试使用 CMake 构建解决方案文件。下面这张图片是如何启动这个 SDK 的指南。

SDK instruction guide

我做了什么

  1. 打开 Visual Studio 2019(已安装 CMake 模块)。

  2. 用VS2019打开SDK文件夹。

  3. 点击“工具”并打开 Visual Studio 2019 Developer Command Prompt v16.4.2。

  4. 类型:

    mkdir build
    cd build
    cmake -G"Visual Studio 15 2017 Win64" ..
    

问题

我遇到了以下问题:

CMake Error at CMakeLists.txt:2 (project):
  Generator 

Visual Studio 15 2017 Win64

  could not find any instance of Visual Studio.

-- Configuring incomplete, errors occurred!
See also "C:/Users/admin/Desktop/StructureSDK-CrossPlatform-0.7.3-ROS/build/CMakeFiles/CMakeOutput.log".

【问题讨论】:

  • 有人有什么想法吗?
  • 请将 CMakeOutput.log 文件添加到问题中。你的问题可能是visual studio安装路径没有添加到环境变量中。
  • 谢谢!我已将VS安装路径添加到环境变量,但它仍然不起作用。而 CMakeOutput.log 是:系统是:Windows - 10.0.18362 - AMD64
  • 谢谢Narra,我的问题已经解决了。 ??????

标签: c++ visual-studio cmake sdk


【解决方案1】:

这个错误:

CMake Error at CMakeLists.txt:2 (project): Generator

Visual Studio 15 2017 Win64

could not find any instance of Visual Studio.

表示您可能没有安装 Visual Studio 2017,或者至少没有正确安装。如果您希望 CMake 改用 Visual Studio 2019(看起来您已安装),则应改用以下 cmake 命令:

cmake -G "Visual Studio 16 2019" -A x64 ..

Visual Studio 15 2017 和 Visual Studio 16 2019 提供不同的编译套件,因此您必须确保使用正确的版本

请注意,您设置 SDK 的说明表明该 SDK 已在 Visual Studio 2017 上进行了测试。因此,为避免您在使用 Visual Studio 2019 时可能遇到的其他潜在问题,我建议您下载并安装 Visual Studio 2017。然后,只需按照说明操作即可,不会出错。

【讨论】:

  • 非常感谢!我尝试了 VS2019 cmake 命令:cmake -G "Visual Studio 16 2019" -A x64 .. 它有效!!!再次感谢您!
【解决方案2】:

我在通过 ssh 从 Jenkins 连接到 Windows 构建节点时遇到了这个问题。

我能够验证的是,通过 ssh 连接运行 bash 或 windows cmd shell "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" 不会返回任何结果。

但是,当从构建节点上的本地 bash 或 cmd shell 运行时,vswhere 将返回所有预期信息。

仔细对比两组环境变量ssh连接vs本地设置ProgramData的差异,结果vswhere返回了预期的结果,CMake可以找到所有已安装的Visual Studio实例。

在 cmd 外壳中 设置 ProgramData=C:\ProgramData

在 .bashrc 导出 ProgramData='C:\ProgramData'

【讨论】:

    【解决方案3】:

    我遇到了同样的问题。我安装了 16.9.3 版的 vs2019。我通过运行 vs 安装程序解决了这个问题。我点了修改,安装程序下载安装了16.9.4,重启后cmake可以正常检测到vs2019已经安装了。

    注意:点击修改时,请确保选中“Visual C++ tools for CMake”。

    【讨论】:

      【解决方案4】:

      对我来说,它适用于 Visual Studio 2022。

      你应该使用像visual studio代码这样的ide,android studio不起作用和/或使用这一行:flutter config --enable-windows-desktop。

      祝你有美好的一天

      【讨论】:

        猜你喜欢
        • 2020-05-24
        • 2019-01-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-02
        相关资源
        最近更新 更多