libusb系列-002-windows下libusb源码编译(代码片段)

DreamLife. DreamLife.     2022-11-22     453

关键词:

libusb系列-002-Windows下libusb源码编译

文章目录


关键字: vs编译Qtlibusbwindows

内容背景:

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

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

摘要

这篇是临时凑出来的一篇,因为下面要写怎么在Qt使用libusb库,所以这篇就得编译出libusb库。本篇为windows编译libusb库。

Windows下编译libusb库

Windows下编译libusb是很简单的,基本就是有手就可以。当前我的系统是win 11 22h2``吧好像,vs 使用的2019 ,我只有这个。

下载源码

这个应该不用再说了,不知道的直接看上一篇,这里就借下上一篇的图了,直接在官网界面找到Downloads,鼠标戳他就可以,会直接跳转到Github上地址上。如下图所示

这里有个问题,就是如果我们是从官网跳转过来的,会直接跳转到 Release下,直接选择需要的版本下载即可,这里我还是下载libusb 1.0.26在Windows下进行编译。

进入msvc目录

解压下载好的源码压缩包,源码结构如下图所示

进入到msvc目录,如下图所示

选择对应的项目工程

在目录下,我们可以看到有许多版本的工程,包括dll动态库的,还有标记static静态库,根据需要打开对应的工程即可。我这里就选择了动态库版本,并使用vs2019编译,如上图所示。

编译

这里就和vs编译其他库一样了,选择项目,鼠标右键生成,即可,我这里忘记截图了,仅贴一个编译日志,如下图所示

查看编译好的库文件

根据日志,可以看到我们库文件路劲,切刀对应路径查看,如下图所示

至此,我们已经编译好了我们需要的库文件,就可以在Qt中和使用其他库一样使用了libusb了。和面不会单独开在win下 libusb 的使用,这里贴一个以前的关于Qt调用外部动态库的内容https://blog.csdn.net/z609932088/article/details/50902302?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166641864416782390510561%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166641864416782390510561&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2blogfirst_rank_ecpm_v1~rank_v31_ecpm-1-50902302-null-null.nonecase&utm_term=%E5%A4%96%E9%83%A8%E5%BA%93&spm=1018.2226.3001.4450


libusb系列-004-qt下使用libusb库(代码片段)

libusb系列-004-Qt下使用libusb库文章目录libusb系列-004-Qt下使用libusb库摘要复制库到指定目录在Pro中包含库文件包含头文件多说一句关键字:Debian、Linux、Qt、libusb、源码内容背景:最近项目终于切到Linux下开发了,所以最... 查看详情

libusb系列-006-qt下使用libusb1.0.9源码(代码片段)

libusb系列-006-Qt下使用libusb1.0.9源码文章目录libusb系列-006-Qt下使用libusb1.0.9源码摘要添加宏添加源文件编译文件测试libusb工程源码关键字:Debian、Linux、Qt、libusb、源码内容背景:最近项目终于切到Linux下开发了,所以最... 查看详情

libusb系列-007-qt下使用libusb1.0.26源码(代码片段)

libusb系列-007-Qt下使用libusb1.0.26源码文章目录libusb系列-007-Qt下使用libusb1.0.26源码摘要安装编译环境确认需要的文件开始编译错误1:找不到文件错误2:expected错误3:SCM_CREDENTALS错误4:类型冲突错误5assert断言错误错... 查看详情

libusb系列-001-libusb简介(代码片段)

libusb系列-001-libusb简介文章目录libusb系列-001-libusb简介摘要基本信息简介支持平台官网如何使用下载神奇的1.0.9版本关键字:Debian、Linux、Qt、libusb、源码内容背景:最近项目终于切到Linux下开发了,所以最近的记录都是... 查看详情

在 Ubuntu 上针对 libusb-dev 进行编译

】在Ubuntu上针对libusb-dev进行编译【英文标题】:Compilingagainstlibusb-devonUbuntu【发布时间】:2011-12-0604:03:47【问题描述】:我正在尝试编译libusb包提供的示例libusb.c(如果你dl源代码。)至少可以说是行不通的。#include<stdio.h>#inc... 查看详情

linux下使用c语言和libusb开发usbhid

玩转USB系列:Linux下使用C语言和libusb开发USBHID实验环境开发步骤安装libusb试试好用否我们来与HID设备通讯!探索、学习与注意:1.&ctx是个什么鬼2.print_devs(devs)->print_devs(&devs);3.操作端口这类程序加上sudo!4.libusb_interrupt_tran... 查看详情

libusb系列-005-部分api简介(代码片段)

libusb系列-005-部分API简介文章目录libusb系列-005-部分API简介摘要libusb_initlibusb_open_device_with_vid_pidlibusb_kernel_driver_activelibusb_detach_kernel_driverlibusb_claim_interfacelibusb_release_interfacelibusb_attac 查看详情

linux下libusb库的安装与使用

一、下载libusb下载网址:http://www.libusb.org/这里我选择的是下载:libusb-1.0.24二、安装libusb解压后libusb-1.0.24,得到的是源代码。$tar-jxvflibusb-1.0.24.tar.bz2$cdlibusb-1.0.24$./configure--prefix=/usr/local/li 查看详情

linux下交叉编译libusb的方法及编译一个使用了libusb库的test程序的方法(代码片段)

linux交叉编译libusb的方法下载libusb下载网址:libusb-BrowseFilesatSourceForge.net交叉编译libusb将下载好的libusb压缩包解压后进入该文件执行下列指令./configure--build=i686-linux--host=arm-linux--prefix=/home/xfc/usb/installCC 查看详情

linux下libusb库的安装与使用

一、下载libusb下载网址:http://www.libusb.org/这里我选择的是下载:libusb-1.0.24二、安装libusb解压后libusb-1.0.24,得到的是源代码。$tar-jxvflibusb-1.0.24.tar.bz2$cdlibusb-1.0.24$./configure--prefix=/usr/local/libusb-1.0.24$make$makeinstall三、... 查看详情

windows下qt+libusbpc程序与斑马打印机使用usb通信(代码片段)

...下载下来libusb压缩包解压,解压后有个INSTALL_WIN.txt,关于Windows环境下编译安装。  (1)我先安装了MinGW,但是发现编译不好弄,有点麻烦,后来我又安装了VisualStudio2017,安装完成后我打开了libusb_2017.sln,打开后如下所示:&n... 查看详情

libusb3.0

1)usb3.0在windows使用winusb时,出现ReadFile的inputbuffer太大时,读不到数据问题? 2)linux下,usb3.0 libusb_claim_interfacefail,error=-5对于一些linux标准支持的设备(如HID设备),可能需要使用libusb_detach_kernel_driver,或libusb_set_auto_de... 查看详情

libusb驱动在win10下的安装过程

...win10下如何关闭强制数字签名,请参考另一篇博文。4、将libusb0.h和lib文件加入工程,编译后,可以运行。 查看详情

通过 libusb 与 USB 设备通信的蛮力方法

...备(6个灯:2个红外灯、2个白灯、2个LED),我无法使用windows驱动程序(我也不喜欢windows),所以我想尝试通过C控制它和libusb(请参阅下面的脚本,我从here获得)。是否有一种蛮 查看详情

libusb 未列出的 USB/IP 仿真设备

】libusb未列出的USB/IP仿真设备【英文标题】:USB/IPemulateddevicenotlistedbylibusb【发布时间】:2015-09-2506:46:19【问题描述】:USB/IP工具允许通过TCP/IP网络共享访问USB设备。USB设备连接到运行TCP服务器的LinuxPC和运行VHCI驱动程序的WindowsPC... 查看详情

如何使用 libusb 和 libusb_get_device_descriptor()?

】如何使用libusb和libusb_get_device_descriptor()?【英文标题】:Howtouselibusbandlibusb_get_device_descriptor()?【发布时间】:2013-01-2105:43:51【问题描述】:我正在学习第一次在Ubuntu12.10上使用libusbv1.0.0。这是我用来尝试了解如何使用此API的一... 查看详情

libusb示例

#include<stdio.h>#include<libusb-1.0/libusb.h>#include<stdint.h>#include<string.h>voidprocessMessage(constuint8_t*);/*---------------------------------------------------------- 查看详情

缓慢构建 librealsense libusb

】缓慢构建librealsenselibusb【英文标题】:slowbuildlibrealsenselibusb【发布时间】:2020-09-2312:59:45【问题描述】:当我启动我的程序时,构建需要很长时间,比如3.5分钟。我明白了:1>------Buildstarted:Project:libusb(ExternalProjectTargets\\libusb... 查看详情