单片机交流
登录
直播中
h1654155199.5148
12年用户
633经验值
私信
关注
[问答]
如何将OpenCV3.4.10的ARM版本移植到开发板?
开启该帖子的消息推送
开发板
如何将OpenCV3.4.10的ARM版本移植到
开发板
?
回帖
(1)
王云玲
2021-11-5 09:56:14
开发板:迅为IMX6Q
移植QTE5.7
编译好的ARM版本OpenCV3.4.10文件:
OpenCV3.4.10 ARM版
编译好的OpenCV依赖库文件:
编译好的OpenCV ARM版 依赖库
1.将/usr/local/arm/opencv-arm/lib/下的库拷贝到开发板相同目录及/lib/下
mkdir /home/topeet/iMX6Q/qt/usr/local/arm/opencv-armcd /usr/local/arm/opencv-arm/cp -r * /home/topeet/iMX6Q/qt/usr/local/arm/opencv-arm/cd lib/cp -r * /home/topeet/iMX6Q/qt/lib/
2.拷贝 opencv-depend 下库到开发板/lib/下
cd /usr/local/arm/arm-2014.05/arm-none-linux-gnueabi/opencv-depend/lib/cp -r * /home/topeet/iMX6Q/qt/lib/ 3.到此,移植就完成了,然后打包rootfs.tgz镜像烧录文件即可。
但是就如此简单的内容为何会单独列一章呢,因为在移植过程中会遇到一个问题:
/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /lib/libopencv_core.so.3.4)
解决方法:
1.在ubuntu中使用
find / -name "libstdc++.so*" 会出现好多文件,但是我们移植的时候需要注意:要移植ARM版本的。
拷贝高版本libstdc++.so.6.0.19到开发板的lib/目录下
cp /usr/local/arm/arm-2014.05/arm-none-linux-gnueabi/libc/usr/lib/libstdc++.so.6.0.19 /home/topeet/iMX6Q/qt/lib/ 进入开发板的lib/目录下
cd /home/topeet/iMX6Q/qt/lib/ 删除原来的软连接
rm -rf libstdc++.so.6 将默认库的软连接指向最新动态库
ln -s libstdc++.so.6.0.19 libstdc++.so.6 检查动态库
strings libstdc++.so.6 | grep GLIBC
注意:如果移植成x86-64版本的libstdc++.so.6.0.21会出现下面的错误
error while loading shared libraries: libstdc++.so.6: wrong ELF class: ELFCLASS64
原因是开发板运行ARM版本的,结果使用的是x86-64版本的。
只需要重新把ARM版本的libstdc++.so.6.0.19移植过来并建立软连接即可。
开发板:迅为IMX6Q
移植QTE5.7
编译好的ARM版本OpenCV3.4.10文件:
OpenCV3.4.10 ARM版
编译好的OpenCV依赖库文件:
编译好的OpenCV ARM版 依赖库
1.将/usr/local/arm/opencv-arm/lib/下的库拷贝到开发板相同目录及/lib/下
mkdir /home/topeet/iMX6Q/qt/usr/local/arm/opencv-armcd /usr/local/arm/opencv-arm/cp -r * /home/topeet/iMX6Q/qt/usr/local/arm/opencv-arm/cd lib/cp -r * /home/topeet/iMX6Q/qt/lib/
2.拷贝 opencv-depend 下库到开发板/lib/下
cd /usr/local/arm/arm-2014.05/arm-none-linux-gnueabi/opencv-depend/lib/cp -r * /home/topeet/iMX6Q/qt/lib/ 3.到此,移植就完成了,然后打包rootfs.tgz镜像烧录文件即可。
但是就如此简单的内容为何会单独列一章呢,因为在移植过程中会遇到一个问题:
/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /lib/libopencv_core.so.3.4)
解决方法:
1.在ubuntu中使用
find / -name "libstdc++.so*" 会出现好多文件,但是我们移植的时候需要注意:要移植ARM版本的。
拷贝高版本libstdc++.so.6.0.19到开发板的lib/目录下
cp /usr/local/arm/arm-2014.05/arm-none-linux-gnueabi/libc/usr/lib/libstdc++.so.6.0.19 /home/topeet/iMX6Q/qt/lib/ 进入开发板的lib/目录下
cd /home/topeet/iMX6Q/qt/lib/ 删除原来的软连接
rm -rf libstdc++.so.6 将默认库的软连接指向最新动态库
ln -s libstdc++.so.6.0.19 libstdc++.so.6 检查动态库
strings libstdc++.so.6 | grep GLIBC
注意:如果移植成x86-64版本的libstdc++.so.6.0.21会出现下面的错误
error while loading shared libraries: libstdc++.so.6: wrong ELF class: ELFCLASS64
原因是开发板运行ARM版本的,结果使用的是x86-64版本的。
只需要重新把ARM版本的libstdc++.so.6.0.19移植过来并建立软连接即可。
举报
更多回帖
rotate(-90deg);
回复
相关问答
开发板
如何将
sqlite3
移植
到
ARM
开发板
上?
2021-04-02
2152
如何将
Qt程序
移植
到
Arm
开发板
上
2022-07-13
4041
请问一下
如何将
用QT做好的播放器
移植
到
ARM
开发板
上去呢
2022-07-12
3034
如何将
sqlite3
移植
到
ARM
开发板
上
2021-01-13
2061
OpenCV
的
移植
方法
2021-02-04
1919
怎样
将
OpenCV
环境与交叉编译器
移植
到
嵌入式
开发
平台上呢
2021-12-27
1056
如何将
mini2440嵌入式
开发板
移植
到
OpenSSH上去呢
2021-12-27
994
请问Openssl如何
移植
到
ARM
开发板
上?
2021-10-22
1216
在虚拟机上安装的
opencv
怎么
移植
到
arm
板
上去
2022-08-11
2131
如何将
ffmpeg
移植
到
ARM
平台
2020-12-28
2191
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分