%general-entities; ]> Finishing Temporary Tools The steps in this section are optional. Skip this section entirely if you are not really short on disk space and do not want to create a backup of the temporary tools. Stripping If the LFS partition is rather small, it is beneficial to learn that unnecessary items can be removed. The executables and libraries built so far contain about 70 MB of unneeded debugging symbols. strip --strip-debug /usr/lib/* strip --strip-unneeded /usr/{,s}bin/* strip --strip-unneeded /tools/bin/* These commands will skip a number of files, reporting that it does not recognize their file format. Most of these are scripts instead of binaries. Note that we use the strip program built in Binutils pass 1, since it is the one that knows how to strip our cross-compiled programs. Take care not to use --strip-unneeded on the libraries. The static ones would be destroyed and the toolchain packages would need to be built all over again. To save more, remove the documentation: rm -rf /usr/{,share}/{info,man,doc} The libtool .la files are only useful when linking with static libraries. They are unneeded, and potentially harmful, when using dynamic shared libraries, specially when using also non-autotools build systems. Remove those files now: find /usr/{lib,libexec} -name \*.la -delete At this point, you should have at least 3 GB of free space in $LFS that can be used to build and install Glibc and Gcc in the next phase. If you can build and install Glibc, you can build and install the rest too. Backup / Restore Now that the essential tools have been created, its time to think about a backup. When every check has passed successfully in the previously built packages, your temporary tools are in a good state and might be backed up for later reuse. In case of fatal failures in the subsequent sections, it often turns out that removing everything and starting over (more carefully) is the best option to recover. Unfortunatly, all the temporary tools will be removed, too. To avoid extra time to redo something which has been built successfully, prepare a backup. Leave the chroot environment and make sure you have at least 600 MB free disk space (the source tarballs will be included in the backup archive) in the home directory of user lfs. Leaving the chroot environment is required as the backup should be stored outside of the $LFS directory but those cannot be accessed when in chroot. Leave chroot environment and unmount the virtual kernel filesystems: exit umount $LFS/dev{/pts,} umount $LFS/{sys,proc,run} Create the backup archive: cd $LFS && tar -cJpf $HOME/temp-tools.tar.xz . In case you have to start over as some mistakes has been made, you can use this backup to restore the temporary tools and save some time on the way to recover. Since the sources are located under $LFS, they are included in the backup archive as well, so you need not to download them again. After checking that $LFS is set proper, restore the backup by executing the following commands: cd $LFS && rm -rf ./* && tar -xpf $HOME/temp-tools.tar.xz Again, double check that the environment has been setup proper and continue building the rest of the system. If you left the chroot environment either to create a backup or restart building using a restore, remember to mount the kernel virtual filesystems as described in and enter the chroot environment (see ) again before continuing.