嵌入式学习小组
直播中

HCPcry

8年用户 1158经验值
擅长:处理器/DSP
私信 关注

怎样将OpenCV环境与交叉编译器移植到嵌入式开发平台上呢

怎样将OpenCV环境与交叉编译器移植到嵌入式开发平台上呢?有哪些移植步骤?

回帖(1)

古贤睦

2021-12-27 14:32:09
开发环境介绍:
主机操作系统:Ubuntu14.04 64位,由全志科技A40i开发板某卖家提供,使用其提供的系统环境与交叉编译器
目标平台:全志科技A40i,其实也可以类比迁移到其他嵌入式开发平台
opencv版本:3.2.0,源代码
提前编译全志科技A40i卖家提供的系统源码,我用的是linuxQt版本,编译中会出现qt5webkit-5.8.0错误,删除cqr40_linuxqt_bv3s/buildroot-2017.02.3/output/build/qt5webkit-5.8.0,重新编译系统即可。内存大于8G最好。主要为了使用交叉编译器gcc和g++。
移植步骤:
一、安装cmake、cmake-qt-gui以及一些需要的库
$ sudo apt-get install cmake
$ sudo apt-get install cmake-qt-gui
$ sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libtiff4-dev libswscale-dev libjasper-dev()
二、利用cmake-gui生成Makefile
1、执行:$ sudo cmake-gui            //进入cmake-gui界面

source code:解压出来的opencv代码目录
build the binaries:手动创建的目录,我在opencv源码目录下创建build-arm
2、Specify the generator of project
点击上图中Configure ,配置如图:

选择Unix Makefiles ,选中Specify options for cross-compiling,点击 Next。
3、配置Target System、Compiler、Find Program/Library/Include
配置如图:

Operating System:Linux或arm-linux,都一样
Processor:arm
Compiler C:选择交叉编译器的gcc,在cqr40_linuxqt_bv3s/root-2017.02.3/output/host/usr/bin目录下
Compiler C++:选择交叉编译器的g++,也在cqr40_linuxqt_bv3s/root-2017.02.3/output/host/usr/bin目录下
Target Root:选择交叉编译器的bin目录,我在/usr/local/目录下自建的arm/opencv-arm/bin目录。
点击 Finish
4、设置编译选项

勾上 BUILD_JPEG 和 BUILD_PNG ,根据需求也可以勾选其他选项。

配置安装目录,系统默认/usr/local,为了避免交叉编译后的库替换原有的库,我把路径改为 /usr/local/arm/opencv-arm

5、生成Makefile
点击 Configure,执行完后点击 Generate
三、编译安装opencv
$ cd /root/library/opencv/opencv-3.2.0/build-arm/
$ make
$ make install
/usr/local/arm/opencv-arm目录如下,将include和lib复制到嵌入式开发板中对应位置即可。注意在嵌入式开发板lib目录下要建立软连接。和host主机上类似。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分