12 个版本 (破坏性更新)
使用旧 Rust 2015
0.9.0 | 2024年7月17日 |
---|---|
0.8.0 | 2023年9月22日 |
0.7.0 | 2022年11月2日 |
0.6.3 | 2022年1月31日 |
0.1.0 | 2014年11月21日 |
#18 in 硬件支持
101,125 每月下载量
在 80 个crate中使用 (直接使用19个)
60KB
1K SLoC
udev
此crate提供对原生libudev
库的安全包装。它应用RAII模式和Rust生命周期来确保对所有libudev
功能的安全使用。RAII模式确保在不再需要时释放所有获取的资源,而Rust生命周期确保按正确顺序释放资源。
依赖项
为了使用libudev
crate,您必须有一个安装了libudev
库的Linux系统,该库可以通过pkg-config
找到。要在基于Debian的Linux发行版上安装libudev
,请执行以下命令
sudo apt-get install libudev-dev
libudev
是一个针对Linux的特定包。它不可用于Windows、OS X或其他操作系统。
交叉编译
在交叉编译到外国目标时可以使用libudev
crate。如何在libudev-sys
crate中交叉编译libudev
的说明在libudev-sys
crate的README中。
使用方法
在Cargo.toml
中添加udev
作为依赖项
[dependencies]
udev = "^0.9.0"
如果您打算支持除Linux以外的操作系统,您需要将udev
作为特定目标的依赖项添加
[target.x86_64-unknown-linux-gnu.dependencies]
udev = "^0.9.0"
导入udev
crate。
extern crate udev;
fn main() {
let mut enumerator = udev::Enumerator::new().unwrap();
enumerator.match_subsystem("tty").unwrap();
for device in enumerator.scan_devices().unwrap() {
println!("found device: {:?}", device.syspath());
}
}
贡献者
- drakulix
- dcuddeback
- mulkieran
- Susurrus
- woodruffw
- Ravenslofty
- sjoerdsimons
- anelson
- ollpu
- a1ien
- lj94093
- patrickelectric
- TomzBench
许可证
版权©2017 Victoria Brekenfeld 版权©2015 David Cuddeback
项目的部分版权由[David Cuddeback, 2015]持有,作为项目的一部分。项目的所有其他版权由[Victoria Brekenfeld, 2017]持有。
在MIT许可证下分发。
依赖项
~0–11MB
~52K SLoC