libusb 和 usbutils 的交叉编译

交叉编译libusb与usbutils以升级功能
文章讲述了如何为特定平台(如arm-linux)交叉编译libusb-1.0.26和usbutils-007,以解决buildroot提供的usbutils版本过低的问题。编译过程包括配置环境、指定编译器路径、设置库和头文件路径,然后进行编译和安装。最终,将编译生成的库和工具通过ssh复制到目标设备上。如果usbutils版本高于007,可能会遇到兼容性问题。

libusb 和 usbutils 的交叉编译

  • 摘要
    因为需要使用到usb设备,但是buildroot编译的usbutils版本太低了,很多功能不能使用,因此重新编译usbutils 工具

  • 链接
    libusb 下载地址: https://sourceforge.net/projects/libusb/
    usbutils 下载地址:https://mirrors.edge.kernel.org/pub/linux/utils/usb/usbutils/

使用的是 libusb-1.0.26 和 usbutils-007

libusb 编译:

./configure CC=/home/alientek/asd/rv1126_rv1109/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc --host=arm-linux --prefix=$PWD/../install --disable-udev && make && make install

usbutils 编译:

./configure CC=/home/alientek/asd/rv1126_rv1109/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc --host=arm-linux LIBUSB_LIBS=-lusb-1.0 LDFLAGS=-L$PWD/../install/lib libsocketcan_CFLAGS=-I$PWD/../install/include/ CPPFLAGS=-I$PWD/../install/include/ && make

编译出install内容:
在这里插入图片描述

在 usbutils-007文件中,需要文件如下:

在这里插入图片描述

拷贝到板子上:

sshpass -p "rockchip" scp lsusb root@192.168.0.55:/usr/bin/
sshpass -p "rockchip" scp usb.ids root@192.168.0.55:/usr/share/


cd ../install
sshpass -p "rockchip" scp lib/libusb* root@192.168.0.55:/usr/lib
sshpass -p "rockchip" scp lib/pkgconfig/libusb* root@192.168.0.55:/usr/lib/pkgconfig

没有usb.ids的报错
在这里插入图片描述

usbutils版本大于007,则报错
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值