7.6. E2fsprogs-1.39

The E2fsprogs package contains the utilities for handling the ext2 file system. It also supports the ext3 journaling file system.

7.6.1. Installation of E2fsprogs

The E2fsprogs documentation recommends that the package be built in a subdirectory of the source tree:

mkdir -v build
cd build

Prepare E2fsprogs for compilation:

CC="${CC} ${BUILD64}" ../configure --prefix=/tools \
--enable-elf-shlibs --disable-evms \
--host=${CLFS_TARGET}

The meaning of the configure options:

--enable-elf-shlibs

This creates the shared libraries which some programs in this package use.

--disable-evms

This disables the building of the Enterprise Volume Management System (EVMS) plugin. This plugin is not up-to-date with the latest EVMS internal interfaces and EVMS is not installed as part of a base CLFS system, so the plugin is not required. See the EVMS website at http://evms.sourceforge.net/ for more information regarding EVMS.

make CC="${CC} ${BUILD64}"

Install the binaries and documentation:

make DESTDIR=${CLFS} install

The meaning of the make option:

DESTDIR=${CLFS}

The Makefile for e2fsprogs hard-codes a path to the mke2fs.conf file, attempting to install it into ${DESTDIR}/etc, causing the installation to fail as it tries to write to /etc. The DESTDIR parameter prevents this.

Install the shared libraries:

make install-libs

Create needed symlinks for a bootable system:

ln -sv /tools/sbin/{fsck.ext2,fsck.ext3,e2fsck} ${CLFS}/sbin

Details on this package are located in Section 10.27.2, “Contents of E2fsprogs.”