构建Opencv时的Cmake策略设置

时间:2016-05-19 07:31:54

标签: opencv cmake

我不确定在哪里设置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'

但我收到了错误。 我该如何设置政策?

1 个答案:

答案 0 :(得分:3)

使用-Wno-dev cmake选项来抑制针对开发人员的警告:

cmake -Wno-dev <other-options> <source-dir>

或者,如果要为项目设置策略,则需要修改其CMakeLists.txt文件并添加行

cmake_policy(SET CMP0054 OLD)

一开始的某个地方。

注意,您需要为属性使用 OLD 值,因为项目很可能依赖于此变量的取消引用。设置 NEW 值可能会破坏项目的功能。

修复项目代码后,即使没有明确的策略设置,也不会生成警告。