Linux libusb "LIBUSB_ERROR_ACCESS" libusb_open返回值为-3 error解决方法

Linux下libusb开发遇到如下问题

在Linux下用libusb进行usb设备打开时遇到“LIBUSB_ERROR_ACCESS  libusb_open函数返回值为-3”

此问题原因为该用户没有权限!

解决方法

第一步:执行以下命令

sudo chmod -R 777 /dev/bus/usb/

重新运行测试程序,若还报错,执行第二步

第二步:永久修改 USB 设备权限

1)使用lsusb命令找出 USB 设备的 vendorID 和 productID

2)创建一个新的udev规则

sudo vim /etc/udev/rules.d/90-myusb.rules

#在文件中添加下面的话
#用你自己的"idVendor"和"idProduct"来替换默认值。MODE="0666"表示USB设备的权限。

SUBSYSTEMS=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", GROUP="users", MODE="0666"

GROUP代表用户组,要确保此时登录的系统用户在该用户组中

可用 "usermod -a -G username groupname" 将用户添加到用户组中

3)重启电脑或重新加载 udev 规则

sudo udevadm control --reload

重新运行测试程序,若还报错,执行第三步 

第三步:su 切换到root用户下运行测试程序

 

参考链接

https://bbs.csdn.net/topics/390001023

https://blog.csdn.net/linux_shuai/article/details/51406896

https://github.com/smartdevicelink/sdl_core/issues/35

https://blog.csdn.net/chasonyang/article/details/45194135

  • 6
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值