Installing Sh-utils-2.0

Estimated build time:           0.47 SBU
Estimated required disk space:  42 MB

Contents of Sh-utils

Last checked against version 2.0.

The Sh-utils package contains a number of basic shell manipulation utilities.

Sh-utils installs the following:

Program Files

basename, chroot, date, dirname, echo, env, expr, factor, false, groups, hostid, id, logname, nice, nohup, pathchk, pinky, printenv, printf, pwd, seq, sleep, stty, su, tee, test, true, tty, uname, uptime, users, who, whoami and yes

 

Sh-utils Installation Dependencies

Last checked against version 2.0.

Autoconf: autoconf, autoheader
Automake: aclocal, automake
Bash: sh
Binutils: ar, as, ld, ranlib
Diffutils: cmp
Fileutils: chmod, chown, install, ls, mv, rm
Gettext: msgfmt, xgettext
Gcc: cc, cc1, collect2, cpp0, gcc
Glibc: getconf
Grep: egrep, fgrep, grep
M4: m4
Make: make
Gawk: gawk
Perl: perl
Sed: sed
Sh-utils: basename, echo, expr, hostname, sleep, uname
Tar: tar
Texinfo: install-info, makeinfo
Textutils: cat, tr

Installation of Sh-utils

Before Sh-utils is installed, the sh-utils patch file may need to be applied. This patch is needed to avoid a conflict of variable names with certain Glibc versions (usually glibc-2.1.x) when compiling sh-utils statically. It is however safe to apply the patch even if you are running a different glibc version. So, if you aren't sure, it's best to apply it.

patch -Np1 -i ../sh-utils-2.0.patch

Prepare Sh-utils to be compiled:

LDFLAGS="-static" ./configure --prefix=$LFS/static \
    --disable-nls

Continue with compiling the package:

make

And finish off installing the package:

make install

During the make install stage you will see the following warning:

WARNING: insufficient access; not installing su
NOTE: to install su, run 'make install-root' as root

You can safely ignore that warning. You need to be logged in as root in order to install su the way Sh-utils wants to install it, which is suid root. Because we don't need su during Chapter 6, and su will be properly installed when we re-install Sh-utils in Chapter 6.