我尝试将一些cmake变量导出到bash中,所以我使用了cmake -LA。我很多情况下都可以使用,但对于某些软件包,cmake -LA将在之前的cmake调用中更改-D ...设置的变量值。
这是预期的行为吗?
答案 0 :(得分:2)
好吧,-LA
仍像往常一样执行CMake脚本。
例如,如果您执行类似
的操作if(FOO)
set(FOO FALSE CACHE BOOL "" FORCE)
else()
set(FOO TRUE CACHE BOOL "" FORCE)
endif()
每次运行时,您会看到FOO
的不同值。
您可以通过添加-N
parameter:
cmake -LA -N <path_to_source>