E2fsprogsのビルド
E2fsprogsは、EXT2 / EXT3 / EXT4 ファイルシステムを管理するためのコマンドおよびライブラリ群です。 mkfs.ext2 コマンド、fsck.ext2 コマンド、dumpe2fs コマンドなどが含まれます。
ビルド・インストール前リストの生成
最初に、ビルド・インストール前リストを生成します。
/sources/genprevlist.sh > /dev/null 2>&1

ソースファイルの展開
ソースファイルを展開します。
cd /sourcestar xvf e2fsprogs-1.42.13.tar.xz cd e2fsprogs-1.42.13



ソースファイルの修正
展開したソースファイルを修正します。
sed -i -e '/int.*old_desc_blocks/s/int/blk64_t/' lib/ext2fs/closefs.csed -i -e '/if (old_desc_blocks/s/super->s_first_meta_bg/desc_blocks/' lib/ext2fs/closefs.c


ビルド用ディレクトリの準備
ビルド用ディレクトリを準備します。
mkdir -vp buildcd build


configure
configureを実行します。
LIBS=-L/tools/lib CFLAGS=-I/tools/include PKG_CONFIG_PATH=/tools/lib/pkgconfig ../configure \--prefix=/usr \ --bindir=/bin \ --enable-elf-shlibs \ --disable-libblkid \ --disable-libuuid \ --disable-uuidd \ --disable-fsck \ --with-root-prefix="" > ../../../logs/configurelog.e2fsprogs 2>&1









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

テスト
テストを行います。
ln -vsf /tools/lib/libblkid.so.1 libln -vsf /tools/lib/libuuid.so.1 lib make LD_LIBRARY_PATH=/tools/lib check 2>&1 | tee ../../../logs/checklog.e2fsprogs



テストが終了したら、ログファイルに出力された内容を参照し、正常に終了したことを確認します。
grep 'tests succeeded' ../../../logs/checklog.e2fsprogs

以下の結果であれば問題ありません。
153 tests succeeded 0 tests failed
インストール
インストールを行います。
make install

続いて、ライブラリのインストールを行います。
make install-libs

インストールが終了したら、画面に出力された内容を参照し、正常に終了したことを確認します。
インストール後の追加作業
インストール後の追加作業を行います。 ライブラリを書き込み可能に変更します。
chmod -v u+w /usr/lib/libcom_err.achmod -v u+w /usr/lib/libe2p.a chmod -v u+w /usr/lib/libext2fs.a chmod -v u+w /usr/lib/libss.a




ライブラリを書き込み可能にしているのは、後の作業で不要なシンボルを削除できるようにするためです。
インストールされたinfoページを展開し、更新します。
gunzip -v /usr/share/info/libext2fs.info.gzinstall-info --dir-file=/usr/share/info/dir /usr/share/info/libext2fs.info


ソースファイル付属文書のインストール
ソースファイルに付属している文書のインストールを行います。
cd ..mkdir -vp /usr/share/doc/e2fsprogs-1.42.13 cp -va ABOUT-NLS /usr/share/doc/e2fsprogs-1.42.13 cp -va COPYING /usr/share/doc/e2fsprogs-1.42.13 cp -va INSTALL /usr/share/doc/e2fsprogs-1.42.13 cp -va INSTALL.elfbin /usr/share/doc/e2fsprogs-1.42.13 cp -va README /usr/share/doc/e2fsprogs-1.42.13 cp -va RELEASE-NOTES /usr/share/doc/e2fsprogs-1.42.13 cp -va SUBMITTING-PATCHES /usr/share/doc/e2fsprogs-1.42.13 cp -va e2fsprogs.lsm /usr/share/doc/e2fsprogs-1.42.13 cp -va doc/*.txt /usr/share/doc/e2fsprogs-1.42.13











インストールリストの生成
最後に、インストールリストを生成します。
/sources/genpostlist.sh > /dev/null 2>&1/sources/gendifflist.sh e2fsprogs







