树莓派3B+配置opencv make出错

Opencv的安装参考https://blog.csdn.net/a1379478560/article/details/80554670

https://www.cnblogs.com/farewell-farewell/p/6125761.html

使用镜像可以加快下载资源的下载速度哟~

sudo vi /etc/apt/sources.list

阿里云镜像:

deb http://mirrors.aliyun.com/raspbian/raspbian/ stretch main non-free contrib rpi
deb-src http://mirrors.aliyun.com/raspbian/raspbian/ stretch main non-free contrib rpi

清华镜像:

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib rpi

推荐使用清华镜像,还需要加载的依赖库:

 sudo apt-get install ffmpeg libavcodec-dev libavformat-dev libswscale-dev

错误1如下:

/usr/include/c++/6/cstdlib:75:25: fatal error: stdlib.h: 没有那个文件或目录
#include_next 

原因:

这是由于gcc6已经吧stdlib.h纳入了libstdc++以进行更好的优化,C Library的头文件stdlib.h使用 Include_next,而include_next对gcc系统头文件路径很敏感。

解决方法:

在make之前,cmake时使用如下指令:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. -DENABLE_PRECOMPILED_HEADERS=OFF

错误2如下:

error:‘CODEC_ID_H264’ was not declared in this scope

原因:

没有加载视频加解码的库,有时候是网络问题没法下载。改成如下即可。

解决方法:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_FFMPEG=OFF .. -DENABLE_PRECOMPILED_HEADERS=OFF

错误3如下:

error: the compiler can assume that the address of ‘annotate_img’ will never be NULL [-Werror=address]

原因:

估计是重复申明了吧。

解决方法:

从当前build目录打开/modules/contrib/CMakeFiles/opencv_contrib.dir/flags.make文件 ,删掉-Werror=address即可。

你可能感兴趣的:(环境配置)