xz_utils

Набор программного обеспечения для сжатия данных общего назначения с высокой степенью сжатия. Включает библиотеку liblzma с API, похожим на zlib, и инструменты командной строки, синтаксис которых аналогичен gzip. Основным форматом является .xz, но также поддерживается устаревший формат .lzma. XZ Utils обеспечивают сжатие примерно на 30% лучше, чем gzip.

Особенности

  • высокая степень сжатия (примерно на 30% лучше gzip и превосходит bzip2);
  • многопоточность: поддержка многопоточного сжатия (флаг -T) и многопоточной распаковки;
  • два формата: нативный .xz и поддержка устаревшего .lzma для обратной совместимости;
  • библиотека liblzma с API, аналогичным zlib, для легкой интеграции.

Основные компоненты

XZ Utils состоят из нескольких компонентов, каждый из которых решает конкретные задачи (подробнее с документацией можно ознакомиться здесь).

Инструмент командной строки xz

Основной инструмент для сжатия и распаковки с синтаксисом, похожим на gzip. Поддерживает множество опций для тонкой настройки параметров.

Основные функции:

  • xz --compress file или xz -z file — сжатие файла;
  • xz --decompress file.xz или xz -d file.xz — распаковка файла;
  • xz -k — сохранять исходный файл после сжатия/распаковки;
  • xz -9 — использовать максимальную степень сжатия (уровни от 0 до 9);
  • xz -T 0 — использовать все доступные процессорные ядра для многопоточного сжатия;
  • xz -l file.xz — просмотр информации о сжатом файле.

Инструмент xzdec

Минималистичный декомпрессор, предназначенный для встраиваемых систем или ситуаций, где важен малый размер исполняемого файла.

Особенности:

  • значительно меньше размером, чем полноценный xz;
  • отсутствуют зависимости от liblzma (скомпилирован статически);
  • поддерживает только формат .xz.

Скрипты-обёртки

Набор скриптов, адаптированных из аналогичных для gzip, для удобной работы со сжатыми файлами.

Основные скрипты:

  • xzgrep — поиск текста в сжатых файлах;
  • xzdiff — сравнение сжатых файлов;
  • xzmore / xzless — просмотр сжатых файлов постранично.

Библиотека liblzma

Ядро XZ Utils, предоставляющее API для интеграции сжатия LZMA2 в сторонние приложения. Интерфейс спроектирован похожим на zlib для упрощения миграции.

Основные функции:

  • lzma_stream_encoder() — создание кодировщика для сжатия потока данных;
  • lzma_stream_decoder() — создание декодировщика для распаковки потока;
  • lzma_code() — основная функция для сжатия или распаковки данных (аналог deflate()/inflate() в zlib);
  • lzma_easy_encoder() — упрощённая настройка кодировщика с предустановками уровня сжатия;
  • lzma_stream_buffer_encode() / lzma_stream_buffer_decode() — функции для однократного сжатия/распаковки данных, полностью находящихся в памяти.

Использование в проекте

Документация по использованию Conan-пакетов для разработки приложений для ОС Аврора.

На сервере Conan библиотеки заранее собраны и размещены под различные версии ОС Аврора 4 и ОC Аврора 5. Для данных версий представлены архитектуры armv7hl, aarch64 и x84_64.

Библиотеку можно использовать в проекте с помощью данного conanfile.py

from conan import ConanFile

class Application(ConanFile):
    settings = "os", "compiler", "arch", "build_type"
    generators = "PkgConfigDeps"

    requires = (
        "xz_utils/5.8.1@aurora",
    )    

Процесс локальной сборки описан в документации.

xz_utils

Лицензия
Unlicense
Версия
Домашняя страница
Скачать
armv7
230.65 Kb
MD5: 2f0ead5766b5a6737fcfa9633929545e
Updated: 30.01.2026, 10:52:49
armv8
249.36 Kb
MD5: 0581d0783528601f775a70ff8d3d82e5
Updated: 30.01.2026, 10:52:45
x86_64
241.65 Kb
MD5: d7547a83a967d8b7e8d7c742f42741ac
Updated: 30.01.2026, 10:52:50
Использование в проекте

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.