安装opencv时make -j8命令后报错:
往上翻一下错误,看到:
解决方案:
参考了两篇博客(最后会附上链接),我的步骤如下:
-
下载Video_Codec_SDK9.1.23
-
解压后,进入文件夹,将nvcuvid.h 、cuviddec.h复制 到 /usr/local/cuda/include/
使用复制语句:
sudo cp nvcuvid.h /usr/local/cuda/include/
sudo cp cuviddec.h /usr/local/cuda/include/
-
将/home/tcy/下载/opencv-3.4.0/modules/cudacodec/src/precomp.hpp中的:
#if CUDA_VERSION >= 9000
#include <dynlink_nvcuvid.h>
#else
#include <nvcuvid.h>
改为:
#if CUDA_VERSION >= 9000 && CUDA_VERSION < 10000
#include <dynlink_nvcuvid.h>
#else
#include <nvcuvid.h>
接下来cuvid_video_source.hpp、frame_queue.hpp、video_decoder.hpp、video_parser.hpp也需要如此修改一下代码。
参考博客:
1、OpenCV CUDA 10 安装 dynlink_nvcuvid.h 问题解决方法
2、OpenCV 4.1 CUDA 10.1 linux下编译问题【fatal error: nvcuvid.h: No such file or directory】
附在最后:实在对不起大家,Video_Codec_SDK9.1.23的百度网盘的资源我不知道啥时候给删掉了。。。。(哭)。