diff --git a/chapter05/bash-inst.xml b/chapter05/bash-inst.xml index 1c047cf2d..89950f847 100644 --- a/chapter05/bash-inst.xml +++ b/chapter05/bash-inst.xml @@ -10,7 +10,7 @@ patch: Now prepare Bash for compilation: -./configure --prefix=/tools --with-curses +./configure --prefix=/tools Compile the program: diff --git a/chapter05/binutils-pass1-inst.xml b/chapter05/binutils-pass1-inst.xml index e10415645..8b9328755 100644 --- a/chapter05/binutils-pass1-inst.xml +++ b/chapter05/binutils-pass1-inst.xml @@ -35,6 +35,7 @@ cd ../binutils-build --prefix=/tools: This tells the configure script to prepare to install the Binutils programs in the /tools directory. + --disable-nls: This disables internationalization (a word often shortened to i18n). We don't need this for our static programs and nls often causes problems @@ -69,14 +70,15 @@ make -C ld LIB_PATH=/tools/lib -C ld clean: This tells the make program -to remove all the compiled files only in the ld +to remove all the compiled files, but only in the ld subdirectory. -C ld LIB_PATH=/tools/lib: This option rebuilds everything in the ld subdirectory. Specifying the LIB_PATH makefile variable on the command line allows us to override the default -value and have it point to our temporary tools location. This preparation will -be utilised later on in the chapter. +value and have it point to our temporary tools location. The value of this +variable specifies the linker's default library search path. You'll see how this +preparation is utilised later on in the chapter. Do not yet remove the Binutils build and source diff --git a/chapter05/binutils-pass2-inst.xml b/chapter05/binutils-pass2-inst.xml index 6184fc1ac..0f465ba12 100644 --- a/chapter05/binutils-pass2-inst.xml +++ b/chapter05/binutils-pass2-inst.xml @@ -17,6 +17,15 @@ cd ../binutils-build ../binutils-&binutils-version;/configure --prefix=/tools \     --enable-shared --with-lib-path=/tools/lib +The meaning of the new configure option: + + +--with-lib-path=/tools/lib: This tells +the configure script to specify the default library search path. We don't want +the library search path to contain library directories from the host +system. + + Before starting to build Binutils, remember to unset any environment variables that override the default optimization flags. diff --git a/chapter05/coreutils-inst.xml b/chapter05/coreutils-inst.xml index 04293d56a..cf0265501 100644 --- a/chapter05/coreutils-inst.xml +++ b/chapter05/coreutils-inst.xml @@ -17,10 +17,18 @@ following command will do so: make RUN_EXPENSIVE_TESTS=yes check +The meaning of the make option: + + +RUN_EXPENSIVE_TESTS=yes: This tells the +test suite to run several additional tests that are considered relatively +expensive on some platforms. Hovever, they are generally not a problem on +Linux. + + And install the package: make install - diff --git a/chapter05/expect-inst.xml b/chapter05/expect-inst.xml index 2851ece04..f95e396f1 100644 --- a/chapter05/expect-inst.xml +++ b/chapter05/expect-inst.xml @@ -14,6 +14,19 @@ GCC test suite run. ./configure --prefix=/tools --with-tcl=/tools/lib --with-x=no +The meaning of the configure options: + + +--with-tcl=/tools/lib: This ensures that +the configure script finds the Tcl installation in our temporary tools location. +We don't want it to find an existing one that may possibly reside on the host +system. + +--with-x=no: This tells the configure +script not to search for Tk (the Tcl GUI component) or the X Window System +libraries, both of which may possibly reside on the host system. + + Build the package: make diff --git a/chapter05/tcl-inst.xml b/chapter05/tcl-inst.xml index db8bf811d..cb59f3e86 100644 --- a/chapter05/tcl-inst.xml +++ b/chapter05/tcl-inst.xml @@ -23,6 +23,16 @@ following command will do so: TZ=UTC make test +The meaning of the make option: + + +TZ=UTC: This sets the time zone to +Coordinated Universal Time (UTC) also known as Greenwich Mean Time (GMT), but +only for the duration of the test suite run. This ensures the clock tests are +exercised correctly. More information on the TZ environment variable is +available later on in Chapter 7. + + Sometimes, package test suites will give false failures. You can consult the LFS Wiki at to verify that these failures are normal. This applies to all tests @@ -32,7 +42,7 @@ throughout the book. make install -Make a link: +Make a necessary symbolic link: ln -s tclsh8.4 /tools/bin/tclsh Do not remove the diff --git a/chapter06/config-glibc.xml b/chapter06/config-glibc.xml index 3ffa9dc1a..d36ab4af8 100644 --- a/chapter06/config-glibc.xml +++ b/chapter06/config-glibc.xml @@ -4,7 +4,7 @@ We need to create the /etc/nsswitch.conf file, because, although Glibc provides defaults when this file is missing or corrupt, -the Glibc defaults don't work well with networking. Also, our timezone needs +the Glibc defaults don't work well with networking. Also, our time zone needs to be set up. Create a new file /etc/nsswitch.conf by running the @@ -32,19 +32,19 @@ netgroup: db files # End /etc/nsswitch.conf EOF -To find out what timezone you're in, run the following script: +To find out what time zone you're in, run the following script: tzselect When you've answered a few questions about your location, the script will -output the name of your timezone, something like EST5EDT +output the name of your time zone, something like EST5EDT or Canada/Eastern. Then create the /etc/localtime file by running: cp --remove-destination /usr/share/zoneinfo/Canada/Eastern /etc/localtime Of course, instead of Canada/Eastern, fill in -the name of the timezone that the tzselect script +the name of the time zone that the tzselect script gave you. diff --git a/chapter06/makedev-inst.xml b/chapter06/makedev-inst.xml index cac1d0fea..571029432 100644 --- a/chapter06/makedev-inst.xml +++ b/chapter06/makedev-inst.xml @@ -5,7 +5,7 @@ Please note that unpacking the MAKEDEV-&makedev-version;.bz2 file doesn't create a directory for you to cd into, as -the file contains one shell script. +the file only contains a single shell script. Install the MAKEDEV script: @@ -17,6 +17,18 @@ chmod 754 /dev/MAKEDEV cd /dev ./MAKEDEV -v generic-nopty +The meaning of the option: + + +-v generic-nopty: The +-v parameter tells the MAKEDEV script to run in verbose +mode. The generic-nopty parameter instructs MAKEDEV to +create a generic selection of commonly used device special files, except for the +ptyXX and ttyXX range of files. We don't need those files because we are going +to use Unix98 PTYs via the devpts file +system. + + If a device you need is missing, try running ./MAKEDEV -v <device>. Alternatively, you may create devices via the mknod program. Please refer to diff --git a/index.xml b/index.xml index af5172ab8..be7f78c15 100644 --- a/index.xml +++ b/index.xml @@ -3,8 +3,8 @@ "/usr/share/docbook/docbookx.dtd" [ - - + +