【问题标题】:CMake 3.11 does not generate Visual Studio solution file (.sln)CMake 3.11 不生成 Visual Studio 解决方案文件 (.sln)
【发布时间】:2018-12-28 09:47:11
【问题描述】:

CMake 3.9 为我的项目创建了一个 Visual Studio 2017 解决方案 (*.sln) 文件,然后我可以在 IDE 中打开该文件以编辑和构建我的项目。相同项目的 CMake 3.11 运行正常,但不生成解决方案文件。 CMake 对解决方案文件的支持是否发生了变化? CMake 变更日志没有提及任何相关内容。

这个小项目演示了这个问题:

project(MyProject)
enable_language(CSharp)

cmake_minimum_required(VERSION 3.11)

add_custom_target(${PROJECT_NAME}
    SOURCES MyFile.cs # Missing MyProject.sln
#   SOURCES MyFile.txt # OK
)

在 3.9 中,两条 SOURCES 行都会生成 MyProject.sln。在 3.11 中,带有 MyFile.cs 的行不会生成 MyProject.sln。

【问题讨论】:

  • 请通过stackoverflow.com/help/mcve改进您的问题。没有迹象表明解决方案文件有更改:github.com/Kitware/CMake/…(自 3.9 起没有更改。)
  • 欢迎来到 StackOverflow。请给我们更多信息。你是从头开始重新生成的吗?您是否比较了两个版本的CMakeCache.txt?一个简单的“Hello World”项目有效吗?它可以在另一台计算机上运行吗? CMakeFiles\CMakeError.log 说什么?因为如果生成器在没有错误的情况下完成,则应该有一个构建环境。
  • 感谢您确认应该有解决方案文件。生成器完成时没有错误,但缺少解决方案文件。我花了一段时间才在我们的大型项目中找出问题,但现在我添加了问题的最小样本。

标签: cmake visual-studio-2017


【解决方案1】:

我曾经遇到过类似的问题,然后我删除了所有文件并从头开始重新生成,它成功了。

【讨论】:

  • 这不是问题的答案。它既没有描述解决问题的实际步骤,也没有描述问题的原因。答案可能是重新启动您的 PC 并重试。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多