在哪里更改 cmake 变量值?

Posted

技术标签:

【中文标题】在哪里更改 cmake 变量值?【英文标题】:Where to change cmake variable values? 【发布时间】:2021-07-19 14:19:41 【问题描述】:

我的 UBUNTU 20.04 系统中有 2 个版本的 PCL,1.9 和 1.12。在一个项目中我想使用 1.9 版本,但是

include_directories($PCL_INCLUDE_DIRS)

上面一行包含项目中的 1.12 版本。 PCL_INCLUDE_DIRS 值存储在哪里以及如何更新它?

【问题讨论】:

【参考方案1】:

您提供的细节很少。但是,在您的 CmakeLists.txt 中,您大概有一行

find_package(PCL REQUIRED)

这会在您的系统上查找已安装的 PCL 版本,如果找到,则会设置像 PCL_INCLUDE_DIRS 这样的变量。

由于您安装了多个版本,因此可能会找到与您想要的版本不同的版本。如果你想要一个特定的版本,那么你可以试试

find_package(PCL 1.9 EXACT REQUIRED)

【讨论】:

所以PCL_INCLUDE_DIRS不能手动设置? 这是一个由 find_package 命令设置的变量。我认为 find_package 命令还设置了一些其他变量,例如库目录。无论如何,这些都只是变数。您当然可以使用“set”命令覆盖它们...“set(PCL_INCLUDE_DIRS home/blah)”。只需确保在任何 find_package 命令之后执行此操作,否则您的变量将被覆盖。

以上是关于在哪里更改 cmake 变量值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在分配的变量值更改时停止变量更改C#

如何在 javascript 代码中更改 django 模板变量值?

如何根据用户 extjs 更改 scss 变量值

更改 SESSION 变量值

如何更改 PHP 中的静态变量值?

从活动中更改片段的变量值