ncapi1.x移植到arm下

移植说明

需要移植libmvnc.so和MvNCAPI.mvcmd,而通过readelf发现,libmvnc.so的依赖库有libusb.so所以也要移植libusb.so,关于libusb.so的移植,见我的另一篇文章:https://mp.csdn.net/mdeditor/92841846#
我使用的版本是1.0.22

交叉编译libmvnc.so

1 cd ~/opensource/ncsdk/api/src
2 把原先的Makefile备份,然后修改Makefile
LIBS += -lpthread -lusb-1.0 -ldl —> LIBS += -lpthread -ldl
$(CC) $(LDFLAGS) $(OBJS) -o $@ $(LIBS) —> $(CC) $(LDFLAGS) $(OBJS) -o $@ $(LIBS) libusb-1.0.so
3 编译
make clean
make api ARCH=arm CC=arm-hisiv500-linux-gcc
这就生成了我们需要的libmvnc.so
4 把libmvnc.so和libusb-1.0.so拷贝出来,就是我们需要动态库
需要注意的事libusb-1.0.so是libusb-1.0.so.0的软链接,libusb-1.0.so.0放在/lib/下
5 头文件在
~/opensource/ncsdk/api/include
~/opensource/libusb-1.0.22/_install_armhi/include/libusb-1.0

MvNCAPI.mvcmd

MvNCAPI.mvcmd是vpu固件,默认的程序在打开设备,获取设备handle时需要先将固件烧录到VPU中。
MvNCAPI.mvcmd存放在~/opensource/ncsdk/api/src/mvnc/目录,我们直接拷贝出来
放在arm下的libmvnc.so所在目录的/mvnc/目录中,当然这个目录也可以在mvnc_api.c中修改。

更新usb规则

规则文件:97-usbboot.rules
在目录:~/opensource/ncsdk/api/src/
拷贝到目录:/etc/udev/rules.d/
然后执行命令更新规则:
udevadm control --reload-rules
udevadm trigger
至此,api便移植成功了,可以跑程序了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值