utils-box-archives 1.0.1

A toolbox of various small RUST utilities that makes handling compressed files easier
Documentation

Coverage Status

Summary

A toolbox library that holds a useful collection of small unitilies written in Rust that make our life easier when writting Rust applications.

Utilities provided:

Archives

Extract files from Tar, Gz and Zip Files

Mininal Example:

let archive: PathBuf = std::env::current_exe()
    .unwrap()
    .parent()
    .unwrap()
    .join("test_archive.tar.gz");

let file: PathBuf = "treasure.hex".into();

let destination: PathBuf = std::env::current_exe()
    .unwrap()
    .parent()
    .unwrap();

archives::extract_file(archive, ArchiveType::Gz, file, destination).unwrap();

Tips for resolving Ubuntu 22.04/24.04 build issues:

  1. Make sure you have the following system-level dependencies installed:

    sudo apt install pkg-config build-essential fontconfig libfontconfig1-dev
    
  2. Verify that pkg-config can detect libstdc++ properly:

    pkg-config --libs libstdc++
    
  3. If libstdc++ is not detected, add the symbolic link:

    sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/11/libstdc++.so /usr/lib/libstdc++.so