Crates.io | tiny-lz4-decoder-sys |
lib.rs | tiny-lz4-decoder-sys |
version | 1.0.1 |
source | src |
created_at | 2023-03-18 16:39:14.60415 |
updated_at | 2023-03-18 16:59:28.941829 |
description | zero dependency, tiny lz4 decompression wrapper built for lodpm |
homepage | https://github.com/foss-lodpm/tiny-lz4-decoder |
repository | https://github.com/foss-lodpm/tiny-lz4-decoder |
max_upload_size | |
id | 813838 |
size | 8,651 |
Tiny lz4 decoding wrapper package built specifically for lod package manager and Unix systems. If you need complete box of lz4, consider using lz4.
In your Cargo.toml:
[dependencies]
tiny-lz4-decoder-sys = "1.0"
In build.rs of your binary crate:
use std::{env, path::Path};
fn main() {
let home_path = env::var("HOME").expect("HOME environment variable is not set.");
let lz4_so = Path::new(&home_path).join(".local/share/tiny_lz4_decoder_sys");
println!("cargo:rustc-link-arg=-Wl,-rpath={}", lz4_so.display());
}
Simple usage:
use std::fs::File;
use tiny_lz4_decoder_sys::Decoder;
fn main() {
let input_file = File::open("compressed_lz4").unwrap();
let mut decoder = Decoder::new(input_file).unwrap();
let mut output_file = File::create("decompressed_output").unwrap();
std::io::copy(&mut decoder, &mut output_file).unwrap();
}
This package is covered under the MIT license. See the LICENSE file for more info.