CMake错误:命令add_definitions()不可编写脚本

时间:2016-06-30 18:52:11

标签: cmake

有没有人遇到过这个错误?如果是这样,我该如何解决它或什么是等效的方法。

我正在运行Ubuntu并且代码创建了一个编译器定义列表,然后我只是循环遍历列表并添加每个定义。

set(COMPILER_DEF_LIST)
list(APPEND COMPILER_DEF_LIST_COMMON
 NUMBER_FAMILY_RESERVED_FIXED_OIDS=5
 CHILD_LIST_ELEMENTS_PER_BLOCK=10
 ...

FOREACH(compilerDefine ${COMPILER_DEF_LIST_COMMON})
add_definitions(-D${compilerDefine})
ENDFOREACH(compilerDefine)

1 个答案:

答案 0 :(得分:2)

此错误消息特定于CMake在"脚本模式下运行"与cmake -P ...

主要是所有处理目标和目标设置/选项/属性的命令都不是可编写脚本的" (在"脚本模式")中运行CMake时无法使用。

另见CMake/Language Syntax: cmake -P

  

...除了与Makefile生成或CMake缓存相关的所有命令都将失败