Brotli – универсальный алгоритм сжатия без потерь, который сжимает данные, используя комбинацию современного варианта алгоритма LZ77, кодирования Хаффмана и моделирования контекста 2-го порядка со степенью сжатия, сопоставимой с лучшими в настоящее время методами общего назначения.
Он похож по скорости с deflate , но обеспечивает более плотное сжатие.
Он открыт под лицензией MIT.
Вы можете просмотреть его исходный код на Github.
Спецификация формата сжатых данных Brotli определена в RFC 7932.
В этом учебном пособии показано, как скомпилировать библиотеку сжатия Brotli из исходников на Ubuntu 18.04 LTS (Bionic Beaver).
Требования
- Система Ubuntu 18.04 LTS.
- Не root-пользователь с доступом sudo.
Начальные шаги
Проверьте версию Ubuntu.
lsb_release -ds # Ubuntu 18.04.1 LTS
Настройте часовой пояс.
sudo dpkg-reconfigure tzdata
Обновите пакеты операционной системы.
sudo apt update && sudo apt upgrade -y
Сборка Brotli
Установите инструменты сборки и необходимые пакеты.
sudo apt install -y build-essential gcc make bc sed autoconf automake libtool git apt-transport-https tree
Клонируйте репозиторий Brotli.
git clone https://github.com/google/brotli.git
Перейдите в каталог исходников Brotli.
cd brotli
Создайте страницу руководства для команды Brotli.
sudo cp ~/brotli/docs/brotli.1 /usr/share/man/man1 && sudo gzip /usr/share/man/man1/brotli.1
Проверьте страницу руководства.
man brotli
Чтобы сгенерировать команду Autotools, сначала запустите файл ./bootstrap.
./bootstrap
После выполнения вышеприведенной команды вы должны иметь доступ к обычным шагам построения программыconfigure
, make
иmake install
Для справки вы можете запустить команду ./configure –help. Теперь мы готовы собрать Brotli со следующими инструкциями.
Основными командами для сборки и установки brotli являются:
./configure --prefix=/usr \ --bindir=/usr/bin \ --sbindir=/usr/sbin \ --libexecdir=/usr/lib/brotli \ --libdir=/usr/lib/brotli \ --datarootdir=/usr/share \ --mandir=/usr/share/man/man1 \ --docdir=/usr/share/doc make sudo make install
После успешного процесса сборки вы можете проверить версию Brotli.
brotli --version # brotli 1.0.6
Чтобы увидеть справку о команде brotli, вы можете запустить:
brotli -h