0

我有一个主 cmake 项目,它有一个 PROJECT_INCLUDE_PATH,它是一个缓存变量。我将此变量作为 CMAKE_ARGS 参数传递给我使用 ExternalProject_Add() 添加的外部项目。

问题是,当我使用“make edit_cache”更改 PROJECT_INCLUDE_PATH 的值时,外部项目没有重新配置。

当主项目中的缓存变量发生更改时,有什么方法可以自动重新配置和构建外部项目?

4

2 回答 2

0

我总是在修改 CMakeCache.txt 后重新运行 CMake(不是我经常这样做)。这将ExternalProject_Add在您的情况下更新呼叫。

这里可能一个更安全的选择是避免make edit_cache,并简单地使用命令行参数重新运行 CMake -DPROJECT_INCLUDE_PATH:PATH=<updated value>

于 2012-06-04T22:36:14.947 回答
0

我发现我没有传递正确的变量。现在它可以正常工作了。

于 2012-07-19T09:45:09.297 回答