解决 OpenCV with CUDA 编译提示缺少 nvcuvid.h 的问题

系统环境:

  • 操作系统:Ubuntu 18.04.01
  • 显卡型号:GeForce GTX 1060 6G
  • CMake 版本:3.10.2
  • GCC 版本:7.4.0
  • GNU Make 版本:4.1
  • CUDA 版本:10.0.130

错误提示:

# make -j`nproc`
...
Cuda 10.0 fatal error: nvcuvid.h: No such file or directory
...
查看错误信息

错误原因:

CUDA 10.0 中 Decode 模块已经被废弃:https://docs.nvidia.com/cuda/video-decoder/index.html

该模块和 Encode 模块将作为 NVIDIA VIDEO CODEC SDK 模块独立发行:https://developer.nvidia.com/nvidia-video-codec-sdk

解决方法:

1. 根据上述链接下载安装 NVIDIA VIDEO CODEC SDK 并安装。(未测试)

2. 关闭 CMake 配置中的 BUILD_opencv_cudacodec 标签。

因为用不到这个功能所以我选择不安装 opencv_cudacodec 模块,关闭后我重新编译成功通过。

原文地址:https://www.cnblogs.com/rabbull/p/11154997.html