| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 | <sect1 id="ch02-install"><title>How to install the software</title><para>Before you can actually start doing something with a package, you needto unpack it first. Often the package files are tar'ed andgzip'ed. (That can be determined by looking at the extension of the file.Tar'ed and gzip'ed archives have a .tar.gz or .tgz extension, forexample.) I'm not going to write down every time how to ungzip and how to untar an archive. I will tell how to do that once, in this section. There is also the possibility that a .tar.bz2 file could be downloaded.Such a file would be tar'ed and compressed with the bzip2 program. Bzip2 achieves a better compression than the more commonly used gzip does. In order to use bz2 archives, the bzip2 program needs to be installed. Most if not every distribution comes with this program, so chances are high it is already installed on the host system. If not, it's installed using the distribution's installation tool.</para><para>To start with, change to the $LFS/usr/src directory by running:</para><blockquote><literallayout>        <userinput>cd $LFS/usr/src</userinput></literallayout></blockquote><para>If a file is tar'ed and gzip'ed, it is unpacked byrunning either one of the following two commands, depending on thefilename:</para><blockquote><literallayout>        <userinput>tar xvzf filename.tar.gz</userinput>        <userinput>tar xvzf filename.tgz</userinput></literallayout></blockquote><para>If a file is tar'ed and bzip2'ed, it is unpacked byrunning:</para><blockquote><literallayout>        <userinput>bzcat filename.tar.bz2 | tar xv</userinput></literallayout></blockquote><para>Some tar programs (most of them nowadays but not all of them) areslightly modified to be able to use bzip2 files directly using eitherthe I or the y tar parameter, which works the same as the z tar parameterto handle gzip archives. The above construction works no matter howyour host system decided to patch bzip2.</para><para>If a file is just tar'ed, it is unpacked by running:</para><blockquote><literallayout>        <userinput>tar xvf filename.tar</userinput></literallayout></blockquote><para>When the archive is unpacked, a new directory will be created under thecurrent directory (and this document assumes that the archives are unpackedunder the $LFS/usr/src directory). Please enter that new directorybefore continuing with the installation instructions. Again, every timethis book is going to install a package, it's up to you to unpack the sourcearchive and cd into the newly created directory.</para><para>From time to time you will be dealing with single files such as patchfiles. These files are generally gzip'ed or bzip2'ed. Before such filescan be used they need to be uncompressed first.</para><para>If a file is gzip'ed, it is unpacked by running:</para><blockquote><literallayout>	<userinput>gunzip filename.gz</userinput></literallayout></blockquote><para>If a file is bzip2'ed, it is unpacked by running:</para><blockquote><literallayout>	<userinput>bunzip2 filename.bz2</userinput></literallayout></blockquote><para>After a package is installed, two things can be done with it:either the directory that contains the sources can be deleted,either it can be kept. If it is kept, that's fine with me, but if the same package is needed again in a later chapter, the directory needs to be deleted first before using it again. If this is not done, you might end up in trouble because old settings will be used (settings that apply to the normal Linux system but which don't always apply to the LFS system). Doing a simple make clean or make distclean does not always guarantee a totally clean source tree.</para><para>There is one exception to that rule: don't remove the linux kernel sourcetree. A lot of programs need the kernel headers, so that's the onlydirectory that should not be removed, unless no software is to be compiledanymore.</para></sect1>
 |