Libusb开发教程一 安装

1. 从官网下载需要使用的离线资源包:

进入 libusb.info 的 Download 页

下载  libusb-1.0.9.tar.bz2 

下载 libusb-compat-0.1.4.tar.bz2

2. 实验平台

OS: Ubuntu16.04

Kernel: 4.4.0

3. 安装过程

<1> 拷贝步骤一中的离线包到 Linux 系统目录,一般拷贝至 /opt 目录,我在 PC 下新建了一个 Tools 文件夹,专门用来保存 Linux 下相关工具包。

<2> 解压压缩包


<3> 进入 libusb-1.0.9 文件夹参考 INSTALL 说明进行配置安装

cd libusb-1.0.9

<4> 执行 ./configure 命令,注意该命令可以选择编译平台,编译的库版本也即运行平台,编译工具链,安装路径等,所以不是默认配置的用户需要在此项自行配置,常见配置选项有:

--build=i686-linux指明软件的编译平台
--host=arm-linux 指明软件的运行平台
--prefix 指明软件的安装目录

CC=arm-linux-gcc       若为交叉编译那么需要指定该工具链

CXX=arm-linux-g++)   若为交叉编译那么需要指定该工具链

如果在嵌入式arm处理器平台上应用,那么需要进行如下配置:


如果在本机PC上使用,那么需要进行如下配置:


可见我的机器cpu架构是 x86_64, 如果是其他架构,可以采用 i686,i386等。具体就根据机器来决定啦,关于架构也可以参见我的其他博文。

上述结果执行成功后,就会生成 Makefile 文件了,如果过程报错,则视情况而定,譬如:configure:error:“udev support requested but libudev not installed”

此时,需要在 ./configure 命令后加上 --disable -udev 就可以了。

<5> make && make install 

<6> 上述过程均成功执行的话,我们就可以在默认安装目录或者configure指定的安装目录下找到 libusb 相关的头文件和库文件了。如下图:


<7> 注意,执行到此步并不表示所有过程已经结束了,此时还需要安装 libusb-compat 兼容包,进入该目录。

<8> 剩下过程与步骤 <4>, <5> 中一样,成功配置并安装后,会在默认安装目录或者configure指定的安装目录下找到 libusb 相关的头文件。如下图:


4. 安装完成

可以使用libusb进入usb世界开发学习了。


有疑问或者问题可以给我邮件或者评论哦,觉得有用就点赞吧~:-D

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/403172.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在网上接外包

在网上接外包。这个需要一些沟通能力和英文能力 以下是一些可以接到外包的网站&#xff1a; 国内&#xff1a; http://www.taskcity.com/很难接到外包&#xff0c;今年在该网站只完成两个项目。 http://www.sxsoft.com/情况同上&#xff0c;一个小项目。 国外&#xff1a; http…

ocLazyLoad angular 按需加载

ionic 框架 1.引用 index.html 加载 <script type"text/javascript" src"lib/oclazyload/ocLazyLoad.min.js"></script> 2.注入 angular.module(starter, [ionic, oc.lazyLoad]) 3.配置 .state(app.myinfo, {url: /user/myinfo,views: {menuCo…

WIN10解包分区和磁盘分区教程

From: https://thinkpad.bbs.taobao.com/detail.html?postId5390151 新机到手第一件事情就是要系统解包和磁盘分区。建议在安装和卸载软件之前&#xff0c;进行磁盘分区&#xff0c;不然有可能只能分出原空间的50%&#xff0c;想要分更多空间&#xff0c;只能还原系统了。 一、…

调用 usb_control_msg 返回错误值 -32, Broken pipe, 对 hidraw write时 返回错误值 -32, Broken pipe

-------------------Step 1--------------------- 如题&#xff0c;使用 libusb 对 hid 类设备进行控制传输的时候&#xff0c;有时会遇到此错误&#xff0c;但是实际上传输是成功的&#xff0c;用usb分析仪等工具和程序中验证&#xff0c;比如发送数据成功后&#xff0c;让设…

element自定义图标;element自定义icon;element-ui自定义tab栏图标;

一、场景&#xff1a;element-ui本身提供了图标&#xff0c;但是不全面或者开发时候需要使用自定义图标展示。此时可以用到elemenUi的自定义图标。参考链接 二、html使用&#xff0c;和正常的element的 图标 i 标签使用一样&#xff0c;使用设置的类名class即可&#xff1a; &…

Music List

http://www.xiami.com/play?ids/song/playlist/id/1208666/type/3#loaded http://www.wlyxmusic.net/

Linux内核协议栈 NAT性能优化之FAST NAT

各位看官非常对不起&#xff0c;本文是用因为写的&#xff0c;如果多有不便敬请见谅代码是在商业公司编写的&#xff0c;在商业产品中也不能开源&#xff0c;再次抱歉This presentation will highlight our efforts on optimizing theLinux TCP/IP stack for providing network…

canvas文字居中;canvas画布文字右对齐;canvas画布文字左对齐;canvas文字自动换行;canvas设置行间距;

canvas参考手册 场景&#xff1a;画布绘制文本&#xff0c;使用 context.fillText(text,x,y,maxWidth)。文本对其也就是设置xy坐标问题。 以下的画布设定宽度假设都是width&#xff1a;500 一、canvas文本左对齐&#xff1a; 就是x轴设置为0即可。 var cdocument.getElementBy…

与朱元思书

风烟俱净&#xff0c;天山共色。从流飘荡&#xff0c;任意东西。自富阳至桐庐一百许里&#xff0c;奇山异水&#xff0c;天下独绝。 水皆缥碧&#xff0c;千丈见底。游鱼细石&#xff0c;直视无碍。急湍甚箭&#xff0c;猛浪若奔。 夹岸高山&#xff0c;皆生寒树&#xff0c;负…

nginx 405 not allowed问题的解决

From: http://www.cnblogs.com/mingaixin/p/4285329.html Apache、IIS、Nginx等绝大多数web服务器&#xff0c;都不允许静态文件响应POST请求&#xff0c;否则会返回“HTTP/1.1 405 Method not allowed”错误。 例1&#xff1a;用Linux下的curl命令发送POST请求给Apache服务器上…

php判断 二维数组中 是否 存在某个一维数组

<?php $arrs array (array (286,127.0.0.1 ),array (287,127.0.0.1 ),array (288,127.0.0.1 ),array (289,127.0.0.1 ) );$row array (289,127.0.0.1 );foreach ( $arrs as $arr ) {if(!judgeEqual($arr,$row)){echo 123;}//print_r ( $arr ); }//使用数组的差集来判断…

Linux文件去掉^M

1. 直接用 vim 编辑器打开文件&#xff0c;然后把字符串 "^M" 替换成空的就可以了。命令如下&#xff1a; 输入 &#xff1a; 号进入底行模式&#xff0c;然后输入&#xff1a; %s/\r//g &#xff0c;再 Enter 就可以了。 2. 使用现成的工具。命令如下&#xff1a; …

el-cascader回显失败;el-cascader回显不出来

—我的是省市联动&#xff0c;选择时候是正常的&#xff0c;得到的绑定值是数组 [‘安徽’,‘黄山’]&#xff0c;没问题&#xff1b; 但是在详情查看时候&#xff0c;回显成[‘安徽’,‘黄山’]&#xff0c;下拉框却不显示回显值。 —原因&#xff1a;虽然data里初始化声明变量…

No grammar constraints (DTD or XML schema).....两种解决方法

From: http://www.cnblogs.com/yqskj/archive/2013/01/11/2857065.html 方法一&#xff1a;常用方法 关闭XML验证 工具栏&#xff1a;windows > preferences > xml > xml files > validation > Indicate when no grammar is specified:选择Ignore即可。 方法二…

cursor管理

使用cursor的时候需要注意在使用完之后将其关闭&#xff0c;什么时候关闭也是一个需要注意的问题&#xff0c;稍不小心就可能会出错。我们自己管理cursor可能不是那么容易&#xff0c;问题出现这个或那样的问题&#xff0c;Android系统提供了一套curosr的管理&#xff0c;下面让…

数字金额加逗号;js给数字加三位一逗号间隔的两种方法;js数据格式化

需求&#xff1a;数字金额&#xff0c;按照三位一个逗号显示。既 千 百万 十亿 或者是按照固定的几位一个逗号展示。 方法1&#xff1a; <script type "text/javascript">//保留三位小数&#xff0c;toLocaleString() 方法可把一个 Number 对象转换为本地格…

学习java的经典书籍

《java编程思想》 《Java编程思想(第4版)》书共22章&#xff0c;包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、Iava’UO系统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容&#xff0c;包含…

项目管理软件伙伴https://www.huobanyun.cn/

现在项目管理软件市面上很多&#xff0c;但能够完全适合每家公司需求的比较难找&#xff0c;因为众口难调&#xff0c;每家公司都有自己的特殊情况&#xff0c;所以&#xff0c;建议考虑下有比较齐全的基础功能的标准化软件产品&#xff0c;同时又在项目管理开发能力上比较突出…

eclipse配置

eclipse 算是跨平台的开发工具了&#xff0c;而且使用的人群很多&#xff0c;虽然网上有很多答案&#xff0c;但我还是想整理下自己的答案&#xff0c;方便日后查询&#xff1a; 1. 编码设置 2. 解决No grammar constraints (DTD or XML schema) 3. [WARNING] Using platform …

el-form表单新增表单项动态校验;el-form校验动态表单v-if不生效;

场景&#xff1a;本文是两种表单校验 1.对于数组for循环&#xff0c;校验每一项 2.对于两个不同的字段&#xff0c;分别v-if显示隐藏的校验 一、新增和删除表单项&#xff0c;动态校验。 el-form表单动态动态新增表单进行校验。直接参考 动态增减表单项 以下代码可直接复制&…