%general-entities; ]> Creating a limited directory layout in LFS filesystem In this section, we begin populating the LFS filesystem with the pieces that will constitute the final Linux system. The first step is to create a limited directory hierarchy, so that the programs compiled in (as well as glibc and libstdc++ in ) can be installed in their final location. We do this so those temporary programs will be overwritten when the final versions are built in . Create the required directory layout by issuing the following commands as root: mkdir -pv $LFS/{etc,var} $LFS/usr/{bin,lib,sbin} for i in bin lib sbin; do ln -sv usr/$i $LFS/$i done case $(uname -m) in x86_64) mkdir -pv $LFS/lib64 ;; esac Programs in will be compiled with a cross-compiler (more details can be found in section ). This cross-compiler will be installed in a special directory, to separate it from the other programs. Still acting as &root;, create that directory with this command: mkdir -pv $LFS/tools LFS editors have deliberately decided not to use a /usr/lib64 directory. Several steps are taken so that the toolchain does not use it. If for any reason this directory appears (either because you made an error in following the instructions, or because you install a binary package that creates it after finishing LFS), it may break the instructions given in the book. You should often ensure that this directory is non-existent.