Estimated build time: 0.47 SBU Estimated required disk space: 42 MB |
Last checked against version 2.0.
The Sh-utils package contains a number of basic shell manipulation utilities.
Sh-utils installs the following:
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
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
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.