| Crates.io | libudev |
| lib.rs | libudev |
| version | 0.3.0 |
| created_at | 2015-04-05 05:18:25.351272+00 |
| updated_at | 2021-01-17 22:31:33.596843+00 |
| description | Rust wrapper for libudev |
| homepage | https://github.com/dcuddeback/libudev-rs |
| repository | https://github.com/dcuddeback/libudev-rs |
| max_upload_size | |
| id | 1775 |
| size | 41,357 |
This crate provides a safe wrapper around the native libudev library.
In order to use the libudev crate, you must have a Linux system with the libudev library
installed where it can be found by pkg-config. To install libudev on Debian-based Linux
distributions, execute the following command:
sudo apt-get install libudev-dev
libudev is a Linux-specific package. It is not available for Windows, OS X, or other operating
systems.
The libudev crate can be used when cross-compiling to a foreign target. Details on how to
cross-compile libudev are explained in the libudev-sys crate's
README.
Add libudev as a dependency in Cargo.toml:
[dependencies]
libudev = "0.3"
If you plan to support operating systems other than Linux, you'll need to add libudev as a
target-specific dependency:
[target.x86_64-unknown-linux-gnu.dependencies]
libudev = "0.3"
Import the libudev crate. The starting point for nearly all libudev functionality is to create a
context object.
extern crate libudev;
fn main() {
let context = libudev::Context::new().unwrap();
let mut enumerator = libudev::Enumerator::new(&context).unwrap();
enumerator.match_subsystem("tty").unwrap();
for device in enumerator.scan_devices().unwrap() {
println!("found device: {:?}", device.syspath());
}
}
Copyright © 2015 David Cuddeback
Distributed under the MIT License.