最終更新:2017-06-13 (火) 16:18:49 (2371d)
libusb
Top / libusb
a library that gives user level applications uniform access to USB devices across many different operating systems.
http://libusb.sourceforge.net/
バージョン
- There are currently two separate core projects, with non-compatible APIs:
Stable API : libusb-1.0
- .NET用 - LibUsbDotNet
- 関数名はlibusb_?*
- libusb-1.0 API symbols begin with libusb_? or LIBUSB_?.
バックエンド
Linux (udev/usbfs) #if defined(OS_LINUX) linux_usbfs_backend Darwin #if defined(OS_DARWIN) darwin_backend? OpenBSD #if defined(OS_OPENBSD) openbsd_backend? NetBSD #if defined(OS_NETBSD) netbsd_backend? Windows (UsbDk) #if defined(OS_WINDOWS) #if defined(USE_USBDK) usbdk_backend? Windows #if defined(OS_WINDOWS) else windows_backend? Windows CE #if defined(OS_WINCE) wince_backend? Haiku #if defined(OS_HAIKU) haiku_usb_raw_backend? SunOS? #if defined(OS_SUNOS) sunos_backend? #else #error "Unsupported OS"
Legacy API : libusb-0.1
- Linux, FreeBSD, NetBSD, OpenBSD, Darwin, Mac OS X
- Windowsではlibusb-win32で扱える
- Ubuntuではこっち
- libusb-0.1 API symbols begin with usb_? or USB_?.
Windows
https://github.com/libusb/libusb/wiki/Windows
http://www.libusb.org/wiki/windows_backend
- Windows 8の32bit/64bitでも使える。
- Currently supports the WinUSB and HID drivers for generic USB device access as well as the libusb-win32 and libusbK drivers.
Known Restrictions
.NET
Linux
- usbfs - Linux/proc/bus/usb (deprecated)
- 検索順
- Linux/dev/bus/usb (udev)
- Linux/proc/bus/usb (usbfs)
- Linux/dev/usbdev?*.*
- 検索順
- udev - Linux/dev/bus/usb (libudevを使ってアクセス)
フォーク
libusb-win32
- libusb-0.1のフォーク
libusbK
- libusb-win32を使ってWinUSBのAPIをエミュレート
libusbx
- フォークだったけどマージされた
- As of 2014.01.26, this project has been fully merged back into libusb and is being discontinued.
- 1.0と0.1両方対応。
使われどころ
- CUPS
- SANE
- fprint?
- libgphoto2
関連
- usbutils
- libhid - HID専用
- Java libusb