トップ > 最小システムの構築 > 新システムの作成(後半) >
XZ

XZのビルド

XZは、データの圧縮・伸長のためのコマンドおよびライブラリ群です。 xzフォーマットはもちろん、lzmaフォーマットも扱います。

ビルド・インストール前リストの生成

最初に、ビルド・インストール前リストを生成します。


/sources/genprevlist.sh > /dev/null 2>&1

ソースファイルの展開

ソースファイルを展開します。


cd /sources
tar xvf xz-5.2.1.tar.xz
cd xz-5.2.1

configure

configureを実行します。


./configure \
  --prefix=/usr \
  -docdir=/usr/share/doc/xz-5.2.1 > ../../logs/configurelog.xz 2>&1

configureが終了したら、ログファイルに出力された内容を参照し、正常に終了したことを確認します。


cat ../../logs/configurelog.xz

ビルド

ビルドを実行します。


make

ビルドが終了したら、画面に出力された内容を参照し、正常に終了したことを確認します。

テスト

テストを行います。


make check 2>&1 | tee ../../logs/checklog.xz

テストが終了したら、ログファイルに出力された内容を参照し、正常に終了したことを確認します。


grep '^==================' -A2 ../../logs/checklog.xz | sed -e '/^==================/d' -e '/^make/d'

以下の結果であれば問題ありません

All 9 tests passed

インストール

インストールを行います。


make install

インストールが終了したら、画面に出力された内容を参照し、正常に終了したことを確認します。

インストール後の追加作業

インストール後の追加作業を行います。 実行ファイルとライブラリを、本来あるべきディレクトリに移動します。


mv -v /usr/bin/lzma         /bin
mv -v /usr/bin/unlzma       /bin
mv -v /usr/bin/lzcat        /bin
mv -v /usr/bin/xz           /bin
mv -v /usr/bin/unxz         /bin
mv -v /usr/bin/xzcat        /bin
mv -v /usr/lib/liblzma.so.* /lib
ln -vsf ../../lib/liblzma.so.5.2.1 /usr/lib/liblzma.so

ライブラリを /lib に移動し、/usr/lib からのシンボリックリンクを再生成しています。

ソースファイル付属文書のインストール

ソースファイルに付属している文書のインストールを行います。


mkdir -vp /usr/share/doc/xz-5.2.1
cp -va ABOUT-NLS        /usr/share/doc/xz-5.2.1
cp -va AUTHORS          /usr/share/doc/xz-5.2.1
cp -va COPYING          /usr/share/doc/xz-5.2.1
cp -va COPYING.GPLv2    /usr/share/doc/xz-5.2.1
cp -va COPYING.GPLv3    /usr/share/doc/xz-5.2.1
cp -va COPYING.LGPLv2.1 /usr/share/doc/xz-5.2.1
cp -va ChangeLog        /usr/share/doc/xz-5.2.1
cp -va INSTALL          /usr/share/doc/xz-5.2.1
cp -va INSTALL.generic  /usr/share/doc/xz-5.2.1
cp -va NEWS             /usr/share/doc/xz-5.2.1
cp -va PACKAGERS        /usr/share/doc/xz-5.2.1
cp -va README           /usr/share/doc/xz-5.2.1
cp -va THANKS           /usr/share/doc/xz-5.2.1
cp -va TODO             /usr/share/doc/xz-5.2.1
cp -va doc/*.txt        /usr/share/doc/xz-5.2.1

後始末

ディスクを圧迫しないよう、ビルド用のディレクトリを削除します。


cd ..
rm -fr xz-5.2.1

インストールリストの生成

最後に、インストールリストを生成します。


/sources/genpostlist.sh > /dev/null 2>&1
/sources/gendifflist.sh xz

ページの先頭へ
 

まとめ

XZは、データの圧縮・伸長のためのコマンドおよびライブラリ群です。

ページの先頭へ