Linux libusb 安装及简单使用

                            Linux libusb 安装及简单使用

一、参考文档:
    1. libusb1 fails do_configure task with “udev support requested but libudev not installed”
        http://stackoverflow.com/questions/23712859/libusb1-fails-do-configure-task-with-udev-support-requested-but-libudev-not-ins
    2. libusb compilation error on slackware 14
        http://stackoverflow.com/questions/29552267/libusb-compilation-error-on-slackware-14
    3. Jan Axelson's Generic HID example under Linux with libusb
        http://www.microchip.com/forums/m340898.aspx
    4. Slackware- usb library
        http://www.linuxquestions.org/questions/slackware-14/slackware-usb-library-4175475048/

二、下载libusb:
    1. 网址:http://www.libusb.org/
    2. 下载:libusb-1.0.9,跳转到解压,并安装:
        ./configure && make && make install; 
    3. 下载:libusb-compat-0.1.4,跳转到解压,并安装(一定要安装,否则总是报各种错,本人用的是64位系统):
        ./configure && make && make install; 

三、libusb安装错误:
    1. 错误提示:
        checking for inline... inline
        checking operating system... Linux
        checking for library containing clock_gettime... -lrt
        checking libudev.h usability... no
        checking libudev.h presence... no
        checking for libudev.h... no
        configure: error: "udev support requested but libudev not installed"
    2. 解决方法:
        sudo apt-get install libudev-dev

四、Example:
    reference:http://www.microchip.com/forums/m340898.aspx

 

Linux使用libusb,你需要进行以下几个步骤: 1. 安装libusb库:使用包管理器安装libusb库,例如在Ubuntu上可以使用以下命令进行安装: ``` sudo apt-get install libusb-1.0-0-dev ``` 2. 编译链接使用libusb的程序:在编译你的程序时,需要将libusb库链接进去。可以使用以下命令编译一个简单的示例程序: ``` gcc -o your_program your_program.c -lusb-1.0 ``` 3. 编写代码:在你的代码中包含libusb的头文件,并使用libusb提供的函数进行设备的检测、打开、读写等操作。以下是一个简单的示例代码: ```c #include <stdio.h> #include <stdlib.h> #include <libusb-1.0/libusb.h> int main() { libusb_context *ctx = NULL; libusb_device_handle *dev_handle = NULL; // 初始化libusb库 if (libusb_init(&ctx) < 0) { printf("Failed to initialize libusb\n"); return -1; } // 打开指定的USB设备 dev_handle = libusb_open_device_with_vid_pid(ctx, vendor_id, product_id); if (dev_handle == NULL) { printf("Failed to open USB device\n"); libusb_exit(ctx); return -1; } // 在这里可以进行设备的读写操作 // 关闭设备和释放资源 libusb_close(dev_handle); libusb_exit(ctx); return 0; } ``` 请注意,上述示例代码中的`vendor_id`和`product_id`需要根据实际情况进行定义,以指定要打开的USB设备。 4. 运行程序:在终端中运行编译生成的可执行文件,即可使用libusb操作USB设备。 以上是在Linux使用libusb的基本步骤,你可以根据自己的需求进行进一步的开发和调试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值