Visual Studio中支持的CMake—在2017 15.2 update版本中有哪些更新

[原文发表地址] CMake support in Visual Studio – what’s new in 2017 15.2 update

[原文发表时间] 2017/04/17

今天发布的Visual Studio 2017 15.2 update预览版本做出了一些改进,CMake Tools for Visual Studio的新功能—目前也已更新到15.2版本。我们已经更新内置的CMake的版本到3.7.2并在CMake的菜单上增强了相关功能的易见性。这次更新也包括已解决的在community上大家报的一些问题。

请下载这个预览版本并试用CMake功能。如果你刚开始接触CMake,可以点开learn more about CMake support in Visual Studio进行学习。我们期待你的反馈。

CMake 工具更新到了CMake 3.7.2

我们想要让Visual Studio成为在Windows上CMake项目工作的最好途径。为了提高兼容性,我们已经将CMake的内置版本—Visual Studio CMake Tools从3.6版更新到3.7.2版。

CMake 3.7.2带来了许多新功能与改进,关于这部分你可以阅读CMake’s 3.7 release notes。CMake 3.7.2使Visual Studio更加了解你项目的结构并允许Viusal Studio提供更加准确的智能感应和创建。

更加直观的CMake菜单

你们将会在这个版本中注意到最直观的改变是修改的CMake菜单: Visual Studio 2017 15.2 Update CMake Menu

此次修改的菜单将所有常见的操作都放在了最上面。在菜单最上面的生成,重新生成,清除和测试所有(如果可用)适用于所有打开文件夹中的CMake项目。下面这些菜单项允许更精准的操作,例如生成单独的目标并进行CMake 缓存的相关操作。现在这个菜单就像是一个CMake的一站式商店,不再像以前所有的相关操作和入口都散落在整个IDE中。

修复的问题和改进

这次15.2 update包括修改了一些客户提出的问题,这些问题大部分都是在community上被反馈的。下面的这些问题已经在这次发布的版本中解决了:

  • Visual Studio不能成功启动CMake目标程序,因为一些CMakeLists的输出位置找不到。
    Developer Community: 24375 24359
  • 当生成输出是打开文件夹的一个子文件夹时,CMake 工具将会停止工作或发生故障。
    Developer Community: 12830 25412
  • 运行所有测试CMakeLists.txt触发了安装CMakeLists.txt步骤。
    Developer Community: 19007
  • 当编译失败的时候,运行测试这一操作还继续运行。
    Developer Community: 17949
  • 没有方法可以通过CMakeSettings.json将参数传递给测试。
    Developer Community: 17968
  • 对于一些大的或是不被支持的CMakeLists文件,CMake的处理似乎陷入了僵局也不能被取消。
    Developer Community: 9879 13799 15384 24404 31401
  • 在第一次生成失败后,重新打开CMake文件夹时,Visual Studio不能自动地再一次运行缓存生成的过程。
    Developer Community: 13185
  • Visual Studio不支持长路径的CMake工作区。
    Developer Community: 9222
  • 如果标准工具集不在工具栏中,CMake生成cache将会失败。
    Developer Community: 37195
  • Visual Studio中的CMake Tools不支持“生成所有”
    Developer Community: 22318
  • 在cache的生成过程和智能感应配置过程中,CMake输出面板上显示了不完整的状态信息。

请给我们发送反馈

请试用最新的最强大的CMake功能,并且及时给我们发送反馈,请下载并安装最新的Visual Studio 2017 Preview。一如往常地,我们欢迎你的反馈。你可以通过邮箱visualcpp@microsoft.comTwitter @visualc或是Facebook Microsoft Visual Cpp发送任何评价。

如果你在使用Visual Studio 2017的过程中遇到了任何问题,无论是安装问题或是IDE本身问题,都可以通过Report a Problem让我们知道,如果有任何建议,可以通过UserVoice让我们知道。我们期待你的反馈!