0
点赞
收藏
分享

微信扫一扫

libusb系列-003-Linux下libusb源码编译


libusb系列-003-Linux下libusb源码编译

文章目录

  • ​​libusb系列-003-Linux下libusb源码编译​​
  • ​​摘要​​
  • ​​源码下载及解压​​
  • ​​下载源码​​
  • ​​解压下载的源码压缩包​​
  • ​​打开终端​​
  • ​​准备编译环境​​
  • ​​安装make dh-autoreconf​​
  • ​​安装 libudev-dev​​
  • ​​编译​​
  • ​​错误的教程​​
  • ​​增加执行bootstrap.sh指令​​
  • ​​再编译​​
  • ​​make​​
  • ​​安装库​​
  • ​​确认下​​


关键字:

​Debian​​、

​Linux​​、

​Qt​​、

​libusb​​、

​源码​

内容背景:

最近项目终于切到Linux下开发了,所以最近的记录都是发生在​​Debian 10​​​ 以及​​Arm Debain 10​​​ 下,​​Qt​​​版本​​5.12.3​​。这几天真是问题多多,收获满满,不过目前阶段仅仅停留在解决问题,至于原理性的东西,还得慢慢消化。最近好多问题都是直接群里问大神,感谢各位大神助我成长。

开始本来USB传世使用的是HIDUSB,后面计划开发一个专用的驱动,到最后,因为最终系统一直定不下来,最终成了使用libusb了。大部分人都是直接使用libusb 的库的,把源码直接放在项目中参与编译的应该很好,哎,我就是那个大冤种,那么请跟随我一起看我如何给自己完坑踩坑吧。

摘要

相对于上篇Windows下libusb的编译,那么Linux下对于我来说就比较困哪了,不过好在还是搞出来了。这里Linux 系统是Debian 10 。gcc版本8.3.0.

源码下载及解压

下载源码

第一步还是下载源码,编译编译,没有源码咋编译,还是和win下一样。下载1.0.26版本的​​libusb​​​,如下图所示.​​1.0.9​​版本我没有下载,原理应该差不多的,这里不在多描述。

这里需要提一个小小的建议,源码压缩包在win 下最好下载zip 的,在linux下,最好还是下载tar.gz的,其中他们的尾行序列可能不一样,也就是​​LF​​​h和​​CRLF​​区别。

libusb系列-003-Linux下libusb源码编译_debian

解压下载的源码压缩包

下载好以后,解压到当前用户根目录下,如下图所示,因为咱命令用的不是很熟练,所以还是能图形界面就图形界面,命令行实在玩不溜,哈哈哈。直接点击提取 选择我们的根目录就可以了。或者选择一个自己喜欢的目录。在提取完成后,会有一个显示文件夹的提示。

libusb系列-003-Linux下libusb源码编译_libusb_02

这里选择主目录就可以,好找,即使用命令,也可以直接​​cd​​就可以了,可以直接省去路劲。点击提取就好了

libusb系列-003-Linux下libusb源码编译_源码_03

这里也是,可以直接点击显示文件,可以省去再到主目录找文件的步骤。如下图所示

libusb系列-003-Linux下libusb源码编译_debian_04

这里,也要主要哦,直接鼠标双击这个文件夹,进去在里面打开终端。

libusb系列-003-Linux下libusb源码编译_libusb_05

打开终端

完了在解压目录下打开终端,这样就省去CD到源码目录的指令了,嘿嘿嘿。

libusb系列-003-Linux下libusb源码编译_debian_06

准备编译环境

安装make dh-autoreconf

这里其实make 是不用安装的,但是为了保险起见,还是安装一下为好。执行如下指令

sudo apt install -y make dh-autoreconf

libusb系列-003-Linux下libusb源码编译_libusb_07

安装 libudev-dev

执行如下指令

sudo apt install -y libudev-dev

libusb系列-003-Linux下libusb源码编译_debian_08

编译

错误的教程

要说这就是坑呢,网上大部分都是​​./autogen.sh​​​ ​​./configure​​​, ​​make​​,问题是这个是不好使的呀。看看我遇到的问题。

libusb系列-003-Linux下libusb源码编译_linux_09

libusb系列-003-Linux下libusb源码编译_编译_10

所呢,我又安装了一个叫 pkg-config 的东西,如下

libusb系列-003-Linux下libusb源码编译_debian_11

但是呢,还是没有结局,一样的错误

libusb系列-003-Linux下libusb源码编译_linux_12

增加执行bootstrap.sh指令

最终还是谷歌到了,在加一条指令

sudo ./bootstrap.sh

如下

libusb系列-003-Linux下libusb源码编译_debian_13

再编译

完了在执行就​​./configure​​就好了,如下图所示

libusb系列-003-Linux下libusb源码编译_编译_14

make

libusb系列-003-Linux下libusb源码编译_编译_15

这里还整的没有权限了

libusb系列-003-Linux下libusb源码编译_libusb_16

安装库

libusb系列-003-Linux下libusb源码编译_源码_17

又是整的没有权限了

libusb系列-003-Linux下libusb源码编译_linux_18

确认下

到目录下确认下

libusb系列-003-Linux下libusb源码编译_libusb_19

至此,在Linux 我们也有了libusb的库了,后面就是使用了。



举报

相关推荐

0 条评论