CMake(或类似)可以生成不使用cl.exe的Visual C ++项目吗?

时间:2015-12-30 17:55:28

标签: visual-c++ cmake

是否可以使用CMake(或其他构建自动化实用程序)生成Visual C ++项目,这些项目使用除 cl.exe之外的C ++编译器?理想情况下,它可以找到相关的兼容C ++标准库;并允许步骤调试;但是一步一步:如果它甚至可以编译一个空的main函数,那将是一个好的开始。

1 个答案:

答案 0 :(得分:5)

CMake区分Generators和Toolsets。

生成器为构建系统生成控制文件,例如Makefile用于make或.sol文件用于Visual Studio或.ninja文件用于Ninja-build。有各种平台的发电机。生成器将cmake传递给-G。如果您想使用Visual C ++,则必须使用Visual Studio 12 2013 Win64Visual Studio 14 2015 Win64[documentation]

工具集指定使用的编译器。这可以是交叉编译器,也可以是替代编译器(MinGW或Clang而不是cl.exe)。工具集必须由发电机支持。您是-T的工具集。目前,工具集的文档记录很少,并且没有可用工具集列表。要使用英特尔编译器,请使用类似于Intel C++ Compiler XE 14.0的内容。

总的来说,这会给你

cmake -G "Visual Studio 14 2015 Win64" -T "Intel C++ Compiler XE 14.0" ..

使用VS 2015和Intel C ++ 14编译器从父目录生成项目。