Visual Studio 现已支持 CMake

简介:

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]

目录
相关文章
|
5天前
|
IDE 编译器 开发工具
C/C++ IDE环境 (Qt Creator visual studio等) Cmake工程不显示头文件的解决方案
C/C++ IDE环境 (Qt Creator visual studio等) Cmake工程不显示头文件的解决方案
36 0
|
11月前
|
C++
【C++】CMake中Visual Studio的MSVC版本与PCL版本对应关系
【C++】CMake中Visual Studio的MSVC版本与PCL版本对应关系
170 0
|
12月前
|
编译器 C++
[✔️]CMake生成的VisualStudio项目,Qt的头文件目录默认添加了编译选项,如何在添加到c++头文件目录
[✔️]CMake生成的VisualStudio项目,Qt的头文件目录默认添加了编译选项,如何在添加到c++头文件目录
111 0
CMake在Visual Studio下保持目录结构
CMake在Visual Studio下保持目录结构 原理 主要通过CMAKE自带函数source_group来设定。 需要把add_executable()函数进行封装,包裹一层source_group()的处理 例子 现有目录结构 hello/include/hello.
2595 0
|
6月前
Visual Studio Code开发常用的工具栏选项,查看源码技巧以及【vscode常用的快捷键】
Visual Studio Code开发常用的工具栏选项,查看源码技巧以及【vscode常用的快捷键】
275 0
|
7月前
|
API
使用 Visual Studio 开发 CS 的 BOF
使用 Visual Studio 开发 CS 的 BOF
|
7月前
|
开发框架 .NET 数据库
asp.net企业费用报销管理信息系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio
asp.net 企业费用报销管理信息系统是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使 用c#语言开发 应用技术:asp.net c#+sqlserver 开发工具:vs2010 +sqlserver
56 0
|
7月前
|
Java Android开发 C++
[笔记]Visual Studio 2015 开发安卓so库JNI层——回调调用
[笔记]Visual Studio 2015 开发安卓so库JNI层——回调调用
|
7月前
|
移动开发 Java 开发工具
[笔记]Visual Studio 2015 开发安卓so库JNI层——HelloWorld
[笔记]Visual Studio 2015 开发安卓so库JNI层——HelloWorld
|
7月前
|
存储 缓存 JSON
用 Visual Studio Code 开发 Angular 应用自动生成的 .angular 文件夹
用 Visual Studio Code 开发 Angular 应用自动生成的 .angular 文件夹
35 0