【问题标题】:OpenCV 2.4.9 and CUDA 6.5OpenCV 2.4.9 和 CUDA 6.5
【发布时间】:2015-07-31 06:09:09
【问题描述】:

我最近升级到了 CUDA 6.5,并在 Ubuntu 14.04 上成功重新编译了 OpenCV 2.4.9。

但是,当我使用 OpenCV 和 cmake 重新编译我的项目时,我得到了以下配置错误:

-- GCC detected, adding compile flags
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
  Could NOT find CUDA: Found unsuitable version "6.5", but required is exact
  version "6.0" (found /usr/local/cuda-6.5)
Call Stack (most recent call first):
  /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:313 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-2.8/Modules/FindCUDA.cmake:806 (find_package_handle_standard_args)
  /usr/local/share/OpenCV/OpenCVConfig.cmake:215 (find_package)
  CMakeLists.txt:9 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/andrey/Data/Projects/Groups_code/Lulu/build-Ubuntu/CMakeFiles/CMakeOutput.log".

如何解决这个问题?需要重新安装cmake,还是升级cmake中的Modules文件?

【问题讨论】:

    标签: opencv cmake


    【解决方案1】:

    尝试删除 cmake 缓存。 “文件”->“删除缓存”。然后像往常一样“配置”、“生成”。

    【讨论】:

    • 我创建了一个新的构建目录并运行 cmake ../src。它仍然有同样的错误。
    • 我遇到了同样的问题,我通过删除缓存解决了它(在 GUI 中),然后设置复选框“高级”,并在 CUDA 组中将所有 cuda 版本更改为 6.5。
    【解决方案2】:

    根据我的经验,当 OpenCV 使用特定版本的 CUDA 构建时,它会在文件 /usr/local/share/OpenCV/OpenCVConfig.cmake 中指定。如果您在构建 OpenCV 之后更改了 CUDA 版本,那么使用新的 CUDA 版本重建 OpenCV 应该可以解决此问题。那基本上会将新版本重写为/usr/local/share/OpenCV/OpenCVConfig.cmake

    此外,您似乎在调用find_package(OpenCV) 之后调用find_package(CUDA)。这强制 cmake 寻找构建 OpenCV 的 CUDA 版本。如果您在find_package(OpenCV) 之前调用find_package(CUDA),您可能会看到如下内容:

    -- Found CUDA: /usr/local/cuda-6.5 (found version "6.5") 
    CMake Error at /usr/local/share/OpenCV/OpenCVConfig.cmake:222 (message):
      OpenCV static library was compiled with CUDA 6.0 support.  Please, use the
      same version or rebuild OpenCV with CUDA 6.5
    Call Stack (most recent call first):
      CMakeLists.txt:49 (find_package)
    

    多年来,随着 CUDA 版本的不同,OpenCV 源代码一直在变化,因此版本不匹配可能会导致问题发生。所以解决这个问题的推荐方法是重建 OpenCV。

    【讨论】:

      猜你喜欢
      • 2014-11-25
      • 1970-01-01
      • 1970-01-01
      • 2016-09-26
      • 2015-03-13
      • 2014-07-28
      • 2015-01-11
      • 2015-01-02
      • 1970-01-01
      相关资源
      最近更新 更多