Visual Studio 2019支持打开既存CMake缓存

最新版本的Visual Studio 2019预览版可以让开发者完全控制CMake,开发者可以自定义或是使用偏好的工具,以完全控制项目的CMake缓存和构建树。

当开发者打开项目的时候,Visual Studio通常会代为管理CMake的所有详细信息,并在项目和CMakeSettings更改而过期时,自动配置项目的缓存和构建树,开发人员不需要担心CMake的细节,以便专注在开发工作上,不过,部分开发工作流程,开发者需要对CMake进行更精细的控制。

因此微软在Visual Studio 2019预览版加入打开既存缓存(Open Existing Cache)功能,让开发者可以完全控制CMake配置项目的方法,这对于开发者使用自定义构建框架、元构建系统,或是使用外部工具在开发工作流程中操作CMake更是至关重要,像是开发者使用脚本来配置项目的环境和构建树的情况,则现在可以直接执行该脚本,并打开在Visual Studio生成的缓存。当开发者打开既存缓存时,Visual Studio会按照开发者的工具管理缓存,而不会直接操作CMake。

另外,因为在复杂项目要产生缓存可能非常的慢,现在开发者可以将Visual Studio指向已配置的缓存,而不用打开项目并等待再次配置缓存,当开发者使用多个编辑器,或是使用CMakeGui等外部工具,对Visual Studio的CMakeSettings.json配置CMake项目,则打开既存缓存这项功能也可以简化这项工作。

要开始使用既存缓存,需要在IDE外部产生一个缓存,而执行这项操作的方式,取决于开发者的开发工作流程,开发者可以使用项目特定的自定义构建脚本,或是调用CMake的元构建系统,甚至使用外部工具CMakeGui也可以。

当生成缓存后,便可以直接在文件>打开>CMake直接打开CMakeCache.txt文件,微软提到,不会再有导入现有缓存的指引,因为现在缓存会直接打开。当然,当开发者已经在Visual Studio打开项目,则也可像是增加新的配置一样增加既存缓存,只要在方案总管点击增加配置按钮,选择CMakeSettings.json文件就可以了。

而这项操作,会与让Visual Studio自动管理缓存的结果相同,仍然获得完整的IntelliSense、构建和调试支持。该功能支持最新版本的CMake 3.8或是更新版本创建的缓存,而非只有Visual Studio附带CMake所产生的缓存。