【问题标题】:How do I specify build options for CMake-based projects?如何为基于 CMake 的项目指定构建选项?
【发布时间】:2011-07-22 08:22:07
【问题描述】:

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

./configure --poco-inc=~/libs/poco/include --poco-lib=~/libs/poco/lib --gtest-inc=~/libs/gtest/include --gtest-lib=~/libs/gtest/lib

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

【问题讨论】:

  • 我找到了答案。这很简单,只需在命令行中使用 key -D=。例如:cmake_minimum_required (VERSION 2.6) project (CMakeOptionTest) Message(STATUS "Poco directory: ${poco-dir}") 结果:#cmake -Dpoco-dir=/usr -- Poco directory: /usr -- 配置完成-- 生成完成 -- 构建文件已写入:xxx
  • 您能想到这一点真是太好了。通常的做法是将您的发现作为答案发布并将其标记为已接受。这样其他人就可以从你的问题中学习。 meta.stackexchange.com/questions/12513/…

标签: command-line cmake configure


【解决方案1】:

另外,您可以使用 OPTION 命令

option(<option_variable> "help string describing option" [initial value])

另见

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

选项由 cmake 命令行参数定义

-D<variable-name>=<value>

你也可以使用

cmake -LH

显示选项及其帮助信息。

【讨论】:

  • 这仅适用于布尔选项。
  • 要列出高级变量,请使用cmake -LA(参见here
猜你喜欢
  • 1970-01-01
  • 2023-03-28
  • 1970-01-01
  • 2017-04-10
  • 1970-01-01
  • 2021-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多