已解决Makefile:162:recipe for target 'all' failed

安装opencv时make -j8命令后报错:
在这里插入图片描述往上翻一下错误,看到:
在这里插入图片描述

解决方案:

参考了两篇博客(最后会附上链接),我的步骤如下:

  • 下载Video_Codec_SDK9.1.23
    附上百度网盘链接 :https://pan.baidu.com/s/1G64bPo7H7WL3vGEjaA9NfQ 密码: cgtf

  • 解压后,进入文件夹,将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 
#else
    #include 

改为:

#if CUDA_VERSION >= 9000 && CUDA_VERSION < 10000 
    #include 
#else
    #include 

接下来cuvid_video_source.hpp、frame_queue.hpp、video_decoder.hpp、video_parser.hpp也需要如此修改一下代码。

附上opencv3.4.0百度网盘链接:
https://pan.baidu.com/s/1H8VOa9C8sDbWh19R4-e-AA 密码: dd73

参考博客:
1、OpenCV CUDA 10 安装 dynlink_nvcuvid.h 问题解决方法
2、OpenCV 4.1 CUDA 10.1 linux下编译问题【fatal error: nvcuvid.h: No such file or directory】

你可能感兴趣的:(问题解决)