qt usb通信添加动态库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt usb通信添加动态库相关的知识,希望对你有一定的参考价值。

参考技术A 就是把所有需要的dell库全部放在exe所在文件夹中,和exe处于同一级目录中。
右键项目文件,点击添加库。
选择外部库。
进行下面配置,选择路径,添加静态库文件,去掉勾选。点击下一步点击完成即可。如果运行报错,需要把pro文件中添加每个库自动生成的代码的最后一行else代码注释掉即可。

Windows下Qt+libusb PC程序与斑马打印机使用USB通信

Qt没有USB类,所以这里我决定使用第三方库libusb。

1、下载libusb,下载网址:https://sourceforge.net/projects/libusb/

技术图片

 

2、把下载下来libusb压缩包解压,解压后有个INSTALL_WIN.txt,关于Windows环境下编译安装。技术图片

 

 (1)我先安装了MinGW,但是发现编译不好弄,有点麻烦,后来我又安装了Visual Studio 2017,安装完成后我打开了libusb_2017.sln,打开后如下所示:

技术图片

 

(2)这里有9个项目,我们需要编译的是libusb-1.0(dll)项目,当然testlibusb项目(列出系统当前所有的USB设备)和hotplugtest(USB热插拔)项目是个很好的例子,这里就不多说了。

编译libusb-1.0(dll)我选择的是:技术图片

 

技术图片

 

(3)编译完成后生成了我们需要的libusb-1.0.dll文件和libusb-1.0.lib文件。

技术图片

 3、Qt导入libusb库,除了刚刚生成的dll文件和lib文件,还需要头文件,在这里:
技术图片

 

 

 4、我把这3个文件全都放在需要导入libusb库的Qt工程文件目录下(和.pro文件在同一目录下)。

(1)导入lib,打开.pro文件加上这个,$$PWD表示当前目录。

  技术图片

 

 (2)加上头文件#include "libusb.h"

 做了这两步之后,我使用libusb库函数,编译不报错,一运行程序就异常退出,后来发现是没把libusb-1.0.dll文件放在编译生成的Debug或者Release目录下(这里Debug版和Release版我都编译过)。

(3)在工程目录生成的Debug或者Release目录下放入libusb-1.0.dll文件。下面图片截屏的是Release文件夹下放入libusb-1.0.dll文件。

技术图片

 

 到这里,QT导入libusb库完成,环境好了,可以查看libusb API开始编程啦。


  

以上是关于qt usb通信添加动态库的主要内容,如果未能解决你的问题,请参考以下文章

Qt编程调用动态库

Qt动态链接库的创建和使用

qt链接在lib\libqt5cored.a很慢

Cmake动态编译VTK库(QVtkwidget)

qt配置tensorflow 动态链接库运行错误

Qt动态连接库/静态连接库创建与使用,QLibrary动态加载库