8.7. Bzip2-1.0.8

Пакет Bzip2 содержит программы для сжатия и распаковки файлов. Сжатие текстовых файлов с помощью bzip2 даёт больший процент сжатия, чем традиционный gzip.

Приблизительное время сборки: менее 0.1 SBU
Требуемое дисковое пространство: 7.2 MB

8.7.1. Установка пакета Bzip2

Примените патч, который установит документацию для этого пакета:

patch -Np1 -i ../bzip2-1.0.8-install_docs-1.patch

Следующая команда гарантирует установку символических ссылок с относительным путём:

sed -i 's@\(ln -s -f \)$(PREFIX)/bin/@\1@' Makefile

Убедитесь, что справочные страницы установлены в правильном месте:

sed -i "s@(PREFIX)/man@(PREFIX)/share/man@g" Makefile

Подготовьте Bzip2 к компиляции:

make -f Makefile-libbz2_so
make clean

Значение параметра make:

-f Makefile-libbz2_so

Этот параметр позволяет выполнить сборку, с использованием другого Makefile, в данном случае Makefile-libbz2_so, который создает динамическую библиотеку libbz2.so и связывает с ней Bzip2.

Скомпилируйте и протестируйте пакет:

make

Установите пакет:

make PREFIX=/usr install

Установите библиотеку:

cp -av libbz2.so.* /usr/lib
ln -sv libbz2.so.1.0.8 /usr/lib/libbz2.so

Установите общий бинарный файл bzip2 в каталог /usr/bin, и замените две копии bzip2 символическими ссылками:

cp -v bzip2-shared /usr/bin/bzip2
for i in /usr/bin/{bzcat,bunzip2}; do
  ln -sfv bzip2 $i
done

Удалите ненужную статическую библиотеку:

rm -fv /usr/lib/libbz2.a

8.7.2. Установка Bzip2 - 32-битная версия

Выполните очистку после предыдущей сборки:

make clean

Скомпилируйте пакет:

sed -e "s/^CC=.*/CC=gcc -m32/" -i Makefile{,-libbz2_so}
make -f Makefile-libbz2_so
make libbz2.a

Установите пакет:

install -Dm755 libbz2.so.1.0.8 /usr/lib32/libbz2.so.1.0.8
ln -sf libbz2.so.1.0.8 /usr/lib32/libbz2.so
ln -sf libbz2.so.1.0.8 /usr/lib32/libbz2.so.1
ln -sf libbz2.so.1.0.8 /usr/lib32/libbz2.so.1.0
install -Dm644 libbz2.a /usr/lib32/libbz2.a

8.7.3. Содержимое пакета Bzip2

Установленные программы: bunzip2 (ссылка на bzip2), bzcat (ссылка на bzip2), bzcmp (ссылка на bzdiff), bzdiff, bzegrep (ссылка на bzgrep), bzfgrep (ссылка на bzgrep), bzgrep, bzip2, bzip2recover, bzless (ссылка на bzmore) и bzmore
Установленные библиотеки: libbz2.so
Созданные каталоги: /usr/share/doc/bzip2-1.0.8

Краткое описание

bunzip2

Распаковывает bzip-файлы

bzcat

Распаковывает в поток стандартного вывода

bzcmp

Запускает программу cmp для bzip файлов

bzdiff

Запускает программу diff для bzip файлов

bzegrep

Запускает программу egrep для bzip файлов

bzfgrep

Запускает программу fgrep для bzip файлов

bzgrep

Запускает программу grep для bzip файлов

bzip2

Сжимает файлы, используя алгоритм сжатия текста с блочной сортировкой Барроуза — Уилера и кодирование Хафмана; степень сжатия лучше, чем у более традиционных архиваторов, использующих алгоритмы «Lempel-Ziv», например gzip

bzip2recover

Пытается восстанавливать данные из поврежденных архивов

bzless

Запускает программу less для bzip файлов

bzmore

Запускает программу more для bzip файлов

libbz2

Библиотека, реализующая сжатие данных без потерь с использованием алгоритма Барроуза-Уилера.