Visual Studio 现已支持 CMake

    xiaoxiao2023-07-06  146

    Visual C++ 团队在他们的官方博客上宣布 Visual Studio 现已支持 CMake。

    什么是CMake?

    CMake 是一个跨平台的开源工具,通过抽象本地构建环境和编译器以管理建立跨多平台程序。CMake解析一个CMake脚本,作者在一个选择好的构建环境中创造并生成一个构建计划。(例如在Visual studio 项目, make 脚本, Xcode 项目中等等)

    CMake是一个跨平台的makefile生成工具,主要用于C和C++编程。在各种操作系统中,有很多工具可以用于编译C和C++代码,每种工具都有自己的makefile和项目文件格式。举个例子,Windows上的项目可能会使用Visual Studio的项目文件,而Linux项目则会使用GNU makefile。CMake提供了一种语言,开发者可以用它来定义项目的结构以及各种必要的配置步骤,它是跨平台的。CMake工具能处理这些代码,根据程序的目标平台,生成对应的makefile或项目文件。

    Visual Studio 对于 CMake 的支持

    他们称所做的两个举措在2016年初已见雏形,并标志着这是他们计划中的一个转折点。

    第一个举措是,在CMake社区(由CMake-server prototype的作者Stephen Kelly 创办用于为CMake提高工具故事)互动,这开始在CMake社区和我们团队内部产生一些有趣的谈话,有人戏称这是CMake和IDE缺失的环节。

    第二个举措是,一项Visual Studio措施(“打开文件夹”)旨在使开发者不使用已存在的VS解决方案和C++项目基础设施而实现内部inner循环loop(编辑—构建—调试经验),允许非MSBuild C++ 代码库能在Visual Studio中加载。

    博客里说到他们现在已经可以提供一个坚实的CMake与VS整合了,有如下的特性:

    为每个目标枚举CMake的对象和文件

    为CMake对象检测输出

    为文件收集编译器的开关,包括默认的系统路径

    配置,构建和安装CMake脚本

    检测CMakeLists.txt中的变化和依赖,并且自动重新配置

    全部都不需要一个专用的CMake生成器

    例子

    CMakeLists.txt

    cmake_minimum_required (VERSION 3.6) project (hello-world) add_executable(hello-world hello.cpp) install(TARGETS hello-world DESTINATION bin)

    Hello.cpp

    #include <iostream> #include <Windows.h> int main(int argc, char* argv[]) { std::cout << "Hello" << std::endl; }

    可操作的列表现在可在解决方案浏览中通过点击右键使用:构建、清除、安装和调试.

    文章转载自 开源中国社区 [http://www.oschina.net]

    最新回复(0)