Linux From Scratch - Version 6.4

Preface

iv. Host System
Requirements

Your host system should have the following software with the minimum
versions indicated. This should not be an issue for most modern Linux
distributions. Also note that many distributions will place software
headers into separate packages, often in the form of
“<package-name>-devel”
or “<package-name>-dev”.
Be sure to install those if your distribution provides them.

Bash-2.05a
(/bin/sh should be a symbolic or hard link to bash)

Binutils-2.12
(Versions greater than 2.18 are not recommended as they have
not been tested)

Bison-1.875
(/usr/bin/yacc should be a link to bison or small script that
executes bison)

Bzip2-1.0.2

Coreutils-5.0 (or
Sh-Utils-2.0, Textutils-2.0, and Fileutils-4.1)

Diffutils-2.8

Findutils-4.1.20

Gawk-3.0
(/usr/bin/awk should be a link to gawk)

Gcc-3.0.1
(Versions greater than 4.3.2 are not recommended as they have
not been tested)

Glibc-2.2.5
(Versions greater than 2.8-20080929 are not recommended as they
have not been tested)

Grep-2.5

Gzip-1.2.4

Linux Kernel-2.6.x
(having been compiled with GCC-3.0 or greater)

The reason for the kernel version requirement is that
thread-local storage support in Binutils will not be built and
the Native POSIX Threading Library (NPTL) test suite will
segfault if the host's kernel isn't at least a 2.6.x version
compiled with a 3.0 or later release of GCC.

If the host kernel is either earlier than 2.6.x, or it was not
compiled using a GCC-3.0 (or later) compiler, you will have to
replace the kernel with one adhering to the specifications.
There are two methods you can take to solve this. First, see if
your Linux vendor provides a 2.6 kernel package. If so, you may
wish to install it. If your vendor doesn't offer a 2.6 kernel
package, or you would prefer not to install it, then you can
compile a 2.6 kernel yourself. Instructions for compiling the
kernel and configuring the boot loader (assuming the host uses
GRUB) are located in Chapter
8.

Note

This version of the book builds a 32-bit Linux system and
requires an existing 32-bit version of of the kernel on the
Intel/AMD x86 architecture. Adding capabilty for x86_64
systems is a major objective of a future version of LFS.
Support for 64-bit systems and additional architectures can
be found in the Cross-Compiled Linux From Scratch (CLFS)
project at http://cross-lfs.org/view/svn/.

M4-1.4

Make-3.79.1

Patch-2.5.4

Perl-5.6.0

Sed-3.0.2

Tar-1.14

Texinfo-4.8

Note that the symlinks mentioned above are required to build an LFS
system using the instructions contained within this book. Symlinks
that point to other software (such as dash, mawk, etc.) may work, but
are not tested or supported by the LFS development team, and may
require either deviation from the instructions or additional patches
to some packages.

To see whether your host system has all the appropriate versions, and
the ability to compile programs, run the following: