1.下载并解压源码,在Opencv源码中创建文件夹build/和install/文件夹
2.进入build/文件夹使用cmake-gui配置
配置源码位路径和build路径
选择交叉编译模式
Operating System(系统名称):Linux
C:工具链的gcc编译器路径。
C++:工具链的g++编译器路径。
Target Root:据说是头文件包含路径,但是随便设置也没问题,不知道具体是干嘛的,所以就随意设置成工具链的文件夹。
Program MOde :Search in Target Root,then native system。(先在绝对路径搜索,再相对路径搜索)。
Libraries Mode:Search only in Target Root。(仅在绝对路径中搜索)
Include Mode :Search only in Target Root。(仅在绝对路径中搜索)
点击configure更新数据,若是出现无法生成有效文件的错误,则用su切换成root用户运行cmake-gui即可。设置源码位置和输出文件夹。
设置库安装目录
设置如下图参数
到此参数基本设置完成,先点configure再点generate,第一次生成可能需要几分钟。
3.编译
在build/文件夹下执行 make -j8。
静等有无报错,有报错是很正常的,不要怕。有些其他问题忘了记录,先凑和这样吧…
错误1
原因
安装anaconda之后,很多默认的编译器都变成了anaconda自带的了,比如python和gcc等。
解决方法
增加 -D WITH_OPENMP=ON
错误2
解决方法:
修改opencv下的 /3rdparty/libpng/pngpriv.h 130行
# if (defined(__ARM_NEON__) || defined(__ARM_NEON)) && \
改为
# if defined(PNG_ARM_NEON) && (defined(__ARM_NEON__) || defined(__ARM_NEON)) && \