CMake:生成调用 cl.exe 的批处理文件
Posted
技术标签:
【中文标题】CMake:生成调用 cl.exe 的批处理文件【英文标题】:CMake: Generating batch file calling cl.exe 【发布时间】:2017-06-23 11:22:46 【问题描述】:CMake 是一个构建系统生成器,支持不同的构建系统和环境,如 make、visual studio、代码块、eclipse-cdt 等... 要生成项目,可以使用 -G 选项指定项目生成器。
是否有一个选项,是否有任何项目,或者是否可以编写一个 generator 来创建调用 cl.exe 的批处理文件,这样我就不必每次都打开visual studio?
【问题讨论】:
如果您从构建目录中的命令行调用cmake --build . --target ALL_BUILD --config Debug
,则不必打开 Visual Studio。相反,该解决方案是从 MSBuild 构建的。
@vre thx 为例!
对于较新版本的 CMake,您可能需要考虑在 project()
命令之前调用 set(CMAKE_MAKE_PROGRAM "$CMAKE_VS_DEVENV_COMMAND" CACHE INTERNAL "")
(另请参阅 here)。对于 Visual Studio 生成器的 --build
命令,这将使用 DevEnv
而不是 MSBuild
。
【参考方案1】:
CMake 能够使用 --build
选项自行调用构建工具(在本例中为 MSBuild)。详情请见this question。
【讨论】:
以上是关于CMake:生成调用 cl.exe 的批处理文件的主要内容,如果未能解决你的问题,请参考以下文章
为啥 cl.exe(Visual Studio 编译器)无法使用 CMake(错误报告)编译项目?
区分 cl.exe 生成的 32 位和 64 位 PE 对象文件(Visual Studio C++)
如何在 azure app 服务中使用 cl.exe 编译 c++ 代码并生成可执行文件