我不确定在哪里设置cmake_policy。 这个link解释了cmake_policy。但不确定在哪里设置cmake政策。 我使用cmake来构建Opencv,我有很多警告,比如
CMake Warning (dev) at cuda_compile_generated_row_filter.2.cu.o.cmake:137 (if):
Policy CMP0054 is not set: Only interpret if() arguments as variables or
keywords when unquoted. Run "cmake --help-policy CMP0054" for policy
details. Use the cmake_policy command to set the policy and suppress this
warning.
我需要像cmake_policy(SET CMP0054 NEW)
一样设置。
在哪里制定这项政策?
我确实喜欢
ppp@ppp-Inspiron-7537:~/Softwares/opencv-2.4.9/build$ cmake_policy(SET CMP0054 NEW)
bash: syntax error near unexpected token `SET'
但我收到了错误。 我该如何设置政策?
答案 0 :(得分:3)
使用-Wno-dev
cmake
选项来抑制针对开发人员的警告:
cmake -Wno-dev <other-options> <source-dir>
或者,如果要为项目设置策略,则需要修改其CMakeLists.txt
文件并添加行
cmake_policy(SET CMP0054 OLD)
一开始的某个地方。
注意,您需要为属性使用 OLD 值,因为项目很可能依赖于此变量的取消引用。设置 NEW 值可能会破坏项目的功能。
修复项目代码后,即使没有明确的策略设置,也不会生成警告。