【发布时间】:2015-11-23 20:55:03
【问题描述】:
我安装了 opencv 3.0(从源代码构建),并将它包含在我的基于 cmake 的项目中,并包含以下内容:
find_package(OpenCV 3.0 REQUIRED)
使用它一切正常,但我也想使用contrib 模块。我在构建 OpenCV 时指定了OPENCV_EXTRA_MODULES_PATH,并且我确定这些模块可用(我可以在我的项目中使用它们),但我想为 禁用此功能>OpenCV 没有 contrib 模块,即。 e.写这样的东西:
#ifdef HAVE_OPENCV_CONTRIB
// some tasty functionality
#else
// some replacement or dummies
#endif
有没有办法在我的 CMakeLists.txt 中确定它而不添加明确的定义? IE。我想在我的 CMakeLists.txt 中做这样的事情:
if (DEFINED ${OPENCV_BUILD_WITH_CONTRIB})
add_definitions(-DHAVE_OPENCV_CONTRIB)
endif(DEFINED ${OPENCV_BUILD_WITH_CONTRIB})
可能有一些简单的方法 - find_package(OpenCV) 之后的任何定义变量?
【问题讨论】: