2个稳定版本
1.27.0+1.0.26 | 2023年10月9日 |
---|---|
1.26.2 | 2023年8月4日 |
1.26.1 |
|
1.0.26 |
|
#1893 在 硬件支持
78 每月下载量
在 2 个Crates中使用了(通过 eusb)
1MB
24K SLoC
Libusb Rust 绑定
libusb-src
包提供对 libusb
C库的声明和链接。
libusb版本:1.0.26
在ubuntu和windows上测试过
示例
use libusb_src as ffi;
fn main(){
unsafe {
let mut context = std::mem::MaybeUninit::<*mut ffi::libusb_context>::uninit();
match ffi::libusb_init(context.as_mut_ptr()){
0 => (),
err => panic!("Failed to init libusb {}", err),
}
let mut list = std::mem::MaybeUninit::<*const *mut ffi::libusb_device>::uninit();
let list_size = ffi::libusb_get_device_list(context.assume_init(), list.as_mut_ptr());
if list_size < 0 {
panic!("Failed to get device list {} {:p}", -list_size, list.assume_init());
}else {
println!("Usb device count: {}", list_size);
}
ffi::libusb_free_device_list(list.assume_init(), 1);
ffi::libusb_exit(context.assume_init());
}
}
交叉编译
支持Windows、Linux和Android,未测试iOS和mac。
依赖项
~0–2MB
~40K SLoC