向CMake添加命令行选项

rcv*_*rcv 104 command-line cmake

我正在使用CMake构建一个大型库,我希望用户能够有选择地启用/禁用构建过程的某些部分.

如何将命令行选项添加到我的CMake构建中,例如,以便用户可以键入类似的内容cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..

显然,OPTION关键字将创建可以从CMake GUI设置的变量,但我无法从命令行中弄清楚如何执行此操作.

bed*_*uin 152

是的,你应该使用option命令.您可以通过以下方式从命令行设置选项:

//CMakeLists.txt
option(MyOption "MyOption" OFF)

//Command line
cmake -DMyOption=ON MyProjectFolder
Run Code Online (Sandbox Code Playgroud)

请注意,-DMyOption必须在路径之前.

  • 使用`-DMyOption = ON`或`-DMyOption = OFF`打开或关闭. (11认同)
  • ...和`cmake MyProjectFolder -DMyOption`不会打开(或关闭)选项 (5认同)

gui*_*ero 11

稍微纠正一下:

如果要传递其他变量,建议指出这些变量的类型:

//CMakeLists.txt
option(MyOption "MyOption" OFF)

//Command line
cmake -DMyOption:BOOL=ON MyProjectFolder -D...
Run Code Online (Sandbox Code Playgroud)