使用cmake和命令行构建MSVC项目

shy*_*cha 11 command-line build cmake visual-studio

美好的一天!

让我们有一个源文件main.cpp和一个CMakeLists.txt包含下一个文本的文件:

cmake_minimum_required(VERSION 2.6)
project(tmp)

set(CMAKE_CXX_FLAGS "-Wall")
add_executable(tmp.elf main.cpp)
Run Code Online (Sandbox Code Playgroud)

假设该main.cpp文件包含一个简单的"Hello,World!" 程序:

#include <stdio.h>

int main()
{
  printf("Hello, World!\n");
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我们可以用它来构建项目cmake CMakeLists.txt && make.然后我们将获得tmp.elf我们可以运行的文件.或者我们可以得到没有tmp.elf文件并假设main.cpp源文件有问题(假设编译器和cmake在构建系统上正确安装).

所以,问题是:我们如何在Windows机器上做同样的事情?例如,我们将tmp.vcproj在运行后获取文件cmake CMakeLists.txt,然后我们需要以某种方式构建它.如何使用命令行执行构建过程?(Java的Process.start(),实际上:-P)

sak*_*kra 22

您可以通过使用以下--build选项调用cmake来启动平台构建和CMake生成器独立方式:

cmake --build .
Run Code Online (Sandbox Code Playgroud)

对于多配置生成器,您可以按以下方式指定配置:

cmake --build . --config Release
Run Code Online (Sandbox Code Playgroud)

另请参阅文档.

  • 是的,它有效:`cmake CMakeLists.txt -G "Visual Studio 9 2008"` 然后 - `cmake --build .`。谢谢!=) (2认同)