1

在 2013 年 10 月 26 日从github下载了最新的 OpenCV 源代码后,我运行 CMake(cmake-gui 2.8.12)首先“配置”然后“生成”项目。生成构建目录会引发一堆错误,从Error in generation process, project files may be invalid

错误截图

我认为可以安全忽略的第一组,它们看起来像这样:

apps/haartraining/CMakeLists.txt 中的 CMake 警告 (dev):
未设置策略 CMP0022:INTERFACE_LINK_LIBRARIES 定义了链接接口。运行“cmake --help-policy CMP0022”以获取策略详细信息。使用 cmake_policy 命令设置策略并禁止显示此警告。

静态库目标“opencv_haartraining_engine”具有
INTERFACE_LINK_LIBRARIES 属性。这应该被首选作为这个库的链接接口的来源。忽略属性并使用链接实现作为链接接口。此警告适用于项目开发人员。使用 -Wno-dev 来抑制它。

但是最后的错误列表让我更加担心。这些是什么?我应该对他们采取行动吗?我应该如何修复它们?

CMake 错误: install(EXPORT "OpenCVModules") 给定绝对 DESTINATION "/lib" 但导出引用了具有相对 DESTINATION "lib" 的目标 "opencv_core" 的安装。

CMake 错误: install(EXPORT "OpenCVModules") 给定绝对 DESTINATION "/lib" 但导出引用了具有相对 DESTINATION "bin" 的目标 "opencv_core" 的安装。

CMake 错误: install(EXPORT "OpenCVModules") 给定绝对 DESTINATION "/lib" 但导出引用了具有相对 DESTINATION "lib" 的目标 "opencv_flann" 的安装。

CMake 错误: install(EXPORT "OpenCVModules") 给定绝对 DESTINATION "/lib" 但导出引用了具有相对 DESTINATION "bin" 的目标 "opencv_flann" 的安装。

[...]

CMake 错误: install(EXPORT "OpenCVModules") 给定绝对 DESTINATION "/lib" 但导出引用了具有相对 DESTINATION "lib" 的目标 "opencv_videostab" 的安装。

CMake 错误: install(EXPORT "OpenCVModules") 给定绝对 DESTINATION "/lib" 但导出引用了具有相对 DESTINATION "bin" 的目标 "opencv_videostab" 的安装。

cmake-gui 错误截图

========== 编辑 ===========

我想知道这里的问题是否是CMAKE_USE_RELATIVE_PATHS在最新代码上运行 CMake 时,在版本 2.4.6 的代码上运行 CMake 时存在的 CMake 值不存在。如果是这样,解决方法是什么?

4

1 回答 1

0

我使用了与您相同的情况,cmake 2.8.12,OpenCV 2.4.6,我为“指定此项目的生成器”选择的是VS10(我使用了VC10),并在其下选择了“使用默认的本机编译器”。但我终于成功了。

于 2013-11-01T09:04:03.600 回答