libusb系列-006-Qt下使用libusb1.0.9源码_qt

libusb系列-006-Qt下使用libusb1.0.9源码

文章目录

  • ​​libusb系列-006-Qt下使用libusb1.0.9源码​​
  • ​​摘要​​
  • ​​添加宏​​
  • ​​添加源文件​​
  • ​​编译文件​​
  • ​​测试libusb​​
  • ​​工程源码​​


关键字:

​Debian​​、

​Linux​​、

​Qt​​、

​libusb​​、

​源码​

内容背景:

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

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

摘要

这个1.0.9版本的代码移植其实我是有参考的,所以这里可以省去很多步骤,比如通过编译源码查看linux需要连接那些库,从而知道需要在项目中包含那些源文件,我可以直接在Qt里面加入源文件调试通即可

libusb系列-006-Qt下使用libusb1.0.9源码_libusb_02

添加宏

首先,这几个宏具体干啥咱也不知道,但是得添加,如下

DEFINES += OS_LINUX
DEFINES += "HAVE_POLL_H=1"
DEFINES += "POLL_NFDS_TYPE=nfds_t"
DEFINES += "THREADS_POSIX=1"

添加源文件

按照参考,直接添加Linux下编译libusb需要的源文件到Qt项目工程中。如下

libusb系列-006-Qt下使用libusb1.0.9源码_Debian_03

编译文件

直接点击Qt Creator左下角的锤子图标,编译代码,基本是一把过,这也是为啥推荐大家使用这个神仙版本1.0.9.不然想我在后面尝试编译最新的1.0.26版本,那酸爽,绝对会感谢自己的。

基本1分钟内,可以等待绿条走完,我们就可以简单测试一下

测试libusb

测试代码很简单,这里就简单测试了libusb 的初始化功能

代码如下,实际代码就一条哈,别看错了

libusb系列-006-Qt下使用libusb1.0.9源码_源码_04

qDebug() << libusb_init(NULL);

libusb系列-006-Qt下使用libusb1.0.9源码_Debian_05

工程源码

同样,这里也把我的Demo分享出来

​​Debian 10 下 Qt 5.12.3 使用libusb 1.0.9源码工程示例​​