I\'m (going to be) writing an application in Qt that will run on the 3 main OSes (Windows, Linux and Mac). One of the features of this app is that it needs USB to talk to a piec
I'd just like to update this post for anyone who is coming back to it nowadays...
Libusb (version 0.1) has since been deprecated. The modern standard is to use libusb-1.0 or libusbx.
Personally, I think there are many reasons to use libusbx. It was written by frustrated libusb-0.1 developers who wanted a more frequent update cycle and better bug maintenance system.
My reasons for suggesting libusbx are as follows:
Granted, libusb-1.0 does support async/sync reporting... but the philosophy behind libusbx is much more appealing and the documentation is better.
So it's totally up to you, if you or whoever would still like to know some more about the libraries, the history is very easy to find online. You can also see this stack question for some more info on the immediate subject.
Try libusb.
Supported operating systems: Linux, FreeBSD, NetBSD, OpenBSD, Darwin, MacOS X (and Windows, through the libusb-win32 project).
But you should note that it uses Sorry, version 1.2.0.0 of libusb0.sys
kernel-mode driver on Windows, which is not WHQL certified and it could be a problem in 64-bit Windows 7 and Windows Server 2008 R2.libusb0.sys
is digitally signed.