如何为基于CMake的项目指定构建选项?

Red*_*ddy 9 command-line configure cmake

我不明白如何使用CMake配置项目和处理命令行选项.我需要设置第三方库目录的变量(例如Poco和GTest).通常,我只是运行带有必要参数的./configure.例如:

./configure --poco-inc=~/libs/poco/include --poco-lib=~/libs/poco/lib --gtest-inc=~/libs/gtest/include --gtest-lib=~/libs/gtest/lib
Run Code Online (Sandbox Code Playgroud)

但是如何将等效信息传递给CMake?如何在cmake文件中使用'set'或'property'指定选项并进行处理?

Lik*_*ike 11

此外,您可以使用OPTION命令

option(<option_variable> "help string describing option" [initial value])
Run Code Online (Sandbox Code Playgroud)

也可以看看

http://cmake.org/cmake/help/v2.8.10/cmake.html#command:option

选项由cmake命令行参数定义

-D<variable-name>=<value>
Run Code Online (Sandbox Code Playgroud)

你也可以使用

cmake -LH
Run Code Online (Sandbox Code Playgroud)

显示选项及其帮助消息.

  • 这仅适用于布尔选项. (4认同)