OpenCV CUDA 10 安装 dynlink_nvcuvid.h 问题解决方法

原因:

       cuda10 does not provide dynlink_nvcuvid.h any more.

解决方法:

      查看出错在modules/cudacodec/src/precomp.hpp

    #if CUDA_VERSION >= 9000
        #include <dynlink_nvcuvid.h>
    #else
        #include <nvcuvid.h>
    #endif

     所以可以用头文件nvcuvid.h

     下载 nvidia-sdk 将其中的 nvcuvid.h copy 到 /usr/local/cuda/include/,同时将上面的代码改为

    #if CUDA_VERSION >= 9000 && CUDA_VERSION < 10000 
        #include <dynlink_nvcuvid.h>
    #else
        #include <nvcuvid.h>
    #endif

    或者copy到modules/cudacodec/src/下, 同时将上面代码改为:

    #if CUDA_VERSION >= 9000 && CUDA_VERSION < 10000 
        #include <dynlink_nvcuvid.h>
    #else
        #include "nvcuvid.h"
    #endif

ref:

  • https://github.com/opencv/opencv/issues/9544
  • https://aur.archlinux.org/packages/opencv-cuda/
posted @ 2019-01-03 16:12  cvhuang  阅读(7400)  评论(2编辑  收藏  举报