linux 安装opencv_本周一问 | petalinux+XSDK 开发opencv应用时依赖库的设置问题

在ZynqMP平台上使用Petalinux和XSDK开发OpenCV应用时,遇到依赖库设置问题。用户在petalinux-config中启用opencv和X11包,通过petalinux-build和petalinux-package生成SDK。在SDK中创建OpenCV应用并添加代码后,链接时出现错误。问题涉及找不到`ld-linux-aarch64.so.1`、`libc.so.6`和`libc_nonshared.a`。解决方案包括调整SDK的库搜索路径和链接器设置。同时,文章讨论了不同SDK路径的区别以及在设置过程中遇到的其他问题。
摘要由CSDN通过智能技术生成
12686c7e54e23402da2407a6b7131854.gif

点击“蓝字”关注我们

Q: petalinux+XSDK 开发opencv应用时依赖库的设置问题

之前一直在做FPGA的逻辑开发,最近在zynqMP上做petalinux上的opencv应用的开发,在XSDK中开发opencv app的时候碰到了一个依赖库设置的问题。如下~

硬件环境:zcu104开发板

软件环境:petalinux 2020.1 + xilinx SDK 2019.1

操作步骤如下:

1. 在官方zcu104 BSP 2019.2的基础上,在petalinux-config -c rootfs中使能了Petalinux Package Groups ---> packagegroup-petalinux-opencv ---> packagegroup-petalinux-opencv 和 Petalinux Package Groups ---> packagegroup-petalinux-x11 ---> packagegroup-petalinux-x11,然后petalinux-build。

2. 参照UG1144,通过petalinux-build --sdk 和 petalinux-package --sysroot生成和部署了SDK,位于/images/linux/SDK下面

3. 在新开终端中通过xsdk命令启动了SDK,新建了一个Opencv Example Application工程。

4. 在例程中添加了一行测试代码 VideoCapture capture(0); 和对应头文件,结果就报错 Undefined reference to `cv::VideoCapture::VideoCapture(int)`,搜索后发现opencv的app工程还需要手动添加库。

5. 在Properties--->C/C++ Build--->Settings--->ARM v8 Linux g++ linker中的Library search path中添加了上述SDK中的两个路径

/home/hyy/prj/zcu104/peta-opencv/cvtest/images/linux/sdk/sysroots/aarch64-xilinx-linux/lib

/home/hyy/prj/zcu104/peta-opencv/cvtest/images/linux/sdk/sysroots/aarch64-xilinx-linux/usr/lib

同时在Libraries中添加了opencv_videoio和opencv_highgui两个库。此时设置如下图所示。

此时发现有如下报错,如下图所示。但是在上面添加的路径里都

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值