General edits. Added bash+readline display_wrap patches

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/testing/BOOK@4040 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Gerard Beekmans
2004-08-17 22:12:01 +00:00
parent 685031656e
commit 24a08b94de
20 changed files with 162 additions and 68 deletions

View File

@@ -46,6 +46,7 @@ first a summary, then a detailed log.</para>
<listitem><para>Added:</para>
<itemizedlist>
<listitem><para>bash-3.0-display_wrap-1.patch</para></listitem>
<listitem><para>coreutils-5.2.1-suppress_hostname_uptime_kill_su-1.patch</para></listitem>
<listitem><para>flex-2.5.31-debian_fixes-2.patch</para></listitem>
<listitem><para>inetutils-1.4.2-kernel_headers-1.patch</para></listitem>
@@ -54,6 +55,7 @@ first a summary, then a detailed log.</para>
<listitem><para>linux-libc-headers-2.6.7.0</para></listitem>
<listitem><para>module-init-tools-3.0</para></listitem>
<listitem><para>readline-5.0</para></listitem>
<listitem><para>readline-5.0-display_wrap-1.patch</para></listitem>
<listitem><para>sysklogd-1.4.1-kernel_headers-1.patch</para></listitem>
<listitem><para>sysklogd-1.4.1-signal-1.patch</para></listitem>
<listitem><para>sysvinit-2.85-proclen-1.patch</para></listitem>
@@ -79,6 +81,9 @@ first a summary, then a detailed log.</para>
</itemizedlist>
</listitem>
<listitem><para>August 17th, 2004 [gerard]: Added Bash and Readline
Display Wrap patches.</para></listitem>
<listitem><para>August 8th, 2004 [gerard]: Upgraded to
iproute2-2.6.8-ss040730.</para></listitem>

View File

@@ -15,6 +15,13 @@ needed to build an LFS system:</para>
<variablelist role="materials"><title>Patches</title>
<varlistentry>
<term>Bash Dislay Wrap Patch - 1 KB:</term>
<listitem>
<para><ulink url="&patches-root;bash-&bash-version;-display_wrap-1.patch"/></para>
</listitem>
</varlistentry>
<varlistentry>
<term>Coreutils Suppress Uptime, Kill, Su Patch - 16 KB:</term>
<listitem>
@@ -99,6 +106,13 @@ needed to build an LFS system:</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Readline Display Wrap Patch - 1 KB:</term>
<listitem>
<para><ulink url="&patches-root;readline-&readline-version;-display_wrap-1.patch"/>></para>
</listitem>
</varlistentry>
<varlistentry>
<term>Sysklogd Kernel Headers Patch - 3 KB:</term>
<listitem>

View File

@@ -31,6 +31,18 @@
<screen><userinput>./configure --prefix=/tools --without-bash-malloc</userinput></screen>
<para>The meaning of the configure option:</para>
<variablelist>
<varlistentry>
<term><parameter>--without-bash-malloc</parameter></term>
<listitem><para>This options turns off the use of Bash's memory
allocation (malloc) function which is known to cause segmentation
faults. By turning this option off Bash will use the malloc functions
from Glibc which are more stable.</para></listitem>
</varlistentry>
</variablelist>
<para>Compile the program:</para>
<screen><userinput>make</userinput></screen>

View File

@@ -33,11 +33,10 @@ assembler to determine which of their own features to enable.</para>
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. Therefore, if any
environment variables that override default optimizations have been
defined, such as <emphasis>CFLAGS</emphasis> and
<emphasis>CXXFLAGS</emphasis>, we recommend un-setting them when
building Binutils.</para>
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building Binutils.</para>
<para>The Binutils documentation recommends building Binutils outside of the
source directory in a dedicated build directory:</para>

View File

@@ -24,6 +24,13 @@
<sect2 role="installation">
<title>Re-installation of Binutils</title>
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building Binutils.</para>
<para>Create a separate build directory again:</para>
<screen><userinput>mkdir ../binutils-build

View File

@@ -30,13 +30,12 @@
<para>Unpack only the gcc-core tarball because neither the C++
compiler nor the test suite will be needed here.</para>
<para>This package is known to have issues when the default
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. Therefore, if any
environment variables that override default optimizations have been
defined, such as <emphasis>CFLAGS</emphasis> and
<emphasis>CXXFLAGS</emphasis>, we recommend un-setting them when
building GCC.</para>
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building GCC.</para>
<para>The GCC documentation recommends building GCC outside of the
source directory in a dedicated build directory:</para>

View File

@@ -26,6 +26,13 @@
<sect2 role="installation">
<title>Re-installation of GCC</title>
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building GCC.</para>
<para>The tools required to test GCC and Binutils -- Tcl, Expect and
DejaGNU -- are installed now. GCC and Binutils can now be rebuilt,
linking them against the new Glibc and testing them properly (if

View File

@@ -27,13 +27,12 @@
<sect2 role="installation">
<title>Installation of Glibc</title>
<para>This package is known to have issues when the default
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. Therefore, if any
environment variables that override default optimizations have been
defined, such as <emphasis>CFLAGS</emphasis> and
<emphasis>CXXFLAGS</emphasis>, it is recommended that these be un-set
when building Glibc.</para>
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building Glibc.</para>
<para>It should be noted that compiling Glibc in any way other than
the method suggested in this book puts the stability of the system at

View File

@@ -10,7 +10,7 @@
<para>The host must be running at least a 2.6.2 kernel compiled with
GCC-3.0 or higher. There are two main reasons for this high
requirement. First, the Native Posix Threading Library (NPTL)
testsuite will segfault if the host's kernel hasn't been compiled with
testsuite will segfault if the host's kernel has not been compiled with
GCC-3.0 or a later version. Secondly, the 2.6.2 or later version of
the kernel is required for the use of Udev. Udev creates devices
dynamically by reading from the <systemitem

View File

@@ -28,11 +28,28 @@ GCC, Glibc, Grep, Make, Ncurses, Sed.</seg></seglistitem>
<sect2 role="installation">
<title>Installation of Bash</title>
<para>The following patch fixes a problem where Bash sometimes will
only show 33 characters on a line and then wraps to the next
line.</para>
<screen><userinput>patch -Np1 -i ../bash-&bash-version;-display_wrap-1.patch</userinput></screen>
<para>Prepare Bash for compilation:</para>
<screen><userinput>./configure --prefix=/usr --bindir=/bin \
--without-bash-malloc --with-installed-readline</userinput></screen>
<para>The meaning of the configure option:</para>
<variablelist>
<varlistentry>
<term><parameter>--with-installed-readline</parameter></term>
<listitem><para>This options tells Bash to use the
<filename>readline</filename> library that is already installed on the
system rather than using its own readline version.</para></listitem>
</varlistentry>
</variablelist>
<para>Compile the package:</para>
<screen><userinput>make</userinput></screen>

View File

@@ -29,6 +29,13 @@ Glibc, Grep, Make, Perl, Sed, Texinfo</seg></seglistitem>
<sect2 role="installation">
<title>Installation of Binutils</title>
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building Binutils.</para>
<para>Verify that your the terminals (PTYs) are working properly
inside the chroot environment. Check that everything is set up
correctly by performing a simple test:</para>
@@ -43,13 +50,6 @@ set up for proper PTY operation:</para>
<para>The issue needs to be resolved before running the test suites
for Binutils and GCC.</para>
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset or modifying them when building Binutils.</para>
<para>The Binutils documentation recommends building Binutils outside of the
source directory in a dedicated build directory:</para>

View File

@@ -99,15 +99,15 @@ mv /usr/bin/chroot /usr/sbin</userinput></screen>
<segmentedlist>
<segtitle>Installed programs</segtitle>
<seglistitem><seg>basename, cat, chgrp, chmod,
chown, chroot, cksum, comm, cp, csplit, cut, date, dd, df, dir, dircolors,
dirname, du, echo, env, expand, expr, factor, false, fmt, fold, groups, head,
<seglistitem><seg>basename, cat, chgrp, chmod, chown, chroot, cksum,
comm, cp, csplit, cut, date, dd, df, dir, dircolors, dirname, du,
echo, env, expand, expr, factor, false, fmt, fold, groups, head,
hostid, hostname, id, install, join, link, ln, logname, ls, md5sum,
mkdir, mkfifo, mknod, mv, nice, nl, nohup, od, paste, pathchk, pinky, pr,
printenv, printf, ptx, pwd, readlink, rm, rmdir, seq, sha1sum, shred, sleep,
sort, split, stat, stty, su, sum, sync, tac, tail, tee, test, touch, tr, true,
tsort, tty, uname, unexpand, uniq, unlink, uptime, users, vdir, wc, who,
whoami and yes</seg></seglistitem>
mkdir, mkfifo, mknod, mv, nice, nl, nohup, od, paste, pathchk, pinky,
pr, printenv, printf, ptx, pwd, readlink, rm, rmdir, seq, sha1sum,
shred, sleep, sort, split, stat, stty, sum, sync, tac, tail, tee,
test, touch, tr, true, tsort, tty, uname, unexpand, uniq, unlink,
users, vdir, wc, who, whoami and yes</seg></seglistitem>
</segmentedlist>
<variablelist><bridgehead renderas="sect3">Short descriptions</bridgehead>
@@ -650,6 +650,14 @@ making it difficult to recover the data.</para>
</listitem>
</varlistentry>
<varlistentry id="stat">
<term><command>stat</command></term>
<listitem>
<para>displays file or filesystem status.</para>
<indexterm zone="ch-system-coreutils stat"><primary sortas="b-stat">stat</primary></indexterm>
</listitem>
</varlistentry>
<varlistentry id="stty">
<term><command>stty</command></term>
<listitem>
@@ -658,14 +666,6 @@ making it difficult to recover the data.</para>
</listitem>
</varlistentry>
<varlistentry id="su">
<term><command>su</command></term>
<listitem>
<para>runs a shell with substitute user and group IDs.</para>
<indexterm zone="ch-system-coreutils su"><primary sortas="b-su">su</primary></indexterm>
</listitem>
</varlistentry>
<varlistentry id="sum">
<term><command>sum</command></term>
<listitem>
@@ -795,15 +795,6 @@ input.</para>
</listitem>
</varlistentry>
<varlistentry id="uptime-coreutils">
<term><command>uptime</command></term>
<listitem>
<para>reports how long the system has been running, how many users are
logged on, and the system load averages.</para>
<indexterm zone="ch-system-coreutils uptime-coreutils"><primary sortas="b-uptime-coreutils">uptime</primary></indexterm>
</listitem>
</varlistentry>
<varlistentry id="users">
<term><command>users</command></term>
<listitem>

View File

@@ -34,7 +34,7 @@ optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset or modifying them when building Binutils.</para>
unset them when building GCC.</para>
<para>Unpack both the gcc-core and the gcc-g++ tarballs -- they will
unpack into the same directory. Likewise, extract the gcc-testsuite

View File

@@ -31,6 +31,13 @@ Gawk, GCC, Gettext, Grep, Make, Perl, Sed, Texinfo</seg></seglistitem>
<sect2 role="installation">
<title>Installation of Glibc</title>
<para>This package is known to have issues when its default
optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset them when building GCC.</para>
<para>The Glibc build system is self-contained and will install
perfectly, even though the compiler specs file and linker are still
pointing at <filename class="directory">/tools</filename>. The specs

View File

@@ -33,7 +33,7 @@ optimization flags (including the <parameter>-march</parameter> and
<parameter>-mcpu</parameter> options) are changed. If any environment
variables that override default optimizations have been defined, such
as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>,
unset or modifying them when building Binutils.</para>
unset them when building Grub.</para>
<para>Prepare Grub for compilation:</para>

View File

@@ -28,6 +28,12 @@ GCC, Glibc, Grep, Make, Ncurses, Sed</seg></seglistitem>
<sect2 role="installation">
<title>Installation of Readline</title>
<para>The following patch fixes a problem where Readline sometimes
will only show 33 characters on a line and then wraps to the next
line.</para>
<screen><userinput>patch -Np1 -i ../readline-&readline-version;-display_wrap-1.patch</userinput></screen>
<para>Prepare Readline for compilation:</para>
<screen><userinput>./configure --prefix=/usr</userinput></screen>
@@ -36,6 +42,16 @@ GCC, Glibc, Grep, Make, Ncurses, Sed</seg></seglistitem>
<screen><userinput>make SHLIB_XLDFLAGS=-lncurses</userinput></screen>
<para>The meaning of the make option:</para>
<variablelist>
<varlistentry>
<term><parameter>SHLIB_XLDFLAGS=-lncurses</parameter></term>
<listitem><para>This option forces readline to link against the
<filename>libncurses</filename> library.</para></listitem>
</varlistentry>
</variablelist>
<para>Install the package:</para>
<screen><userinput>make install</userinput></screen>

View File

@@ -53,11 +53,10 @@ echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' &gt;&gt; src/feature.h</userinput><
<para>The optional but highly recommended
<parameter>--enable-multibyte</parameter> switch includes support for
editing files in multibyte character encodings into
<command>vim</command>. This is needed if the recommendation was not
heeded to not to use LFS in locales with multibyte character sets.
This switch is also helpful to be able to edit text files initially
created in Linux distributions like Fedora Core that use UTF-8 as a
default character set.</para>
<command>vim</command>. This is needed if you are using a locale with
a multibyte character set. This switch is also helpful to be able to
edit text files initially created in Linux distributions like Fedora
Core that use UTF-8 as a default character set.</para>
<para>Compile the package:</para>
@@ -84,7 +83,10 @@ symlink:</para>
system, it may be necessary to re-compile Vim after installing X. Vim
comes with a GUI version of the editor that requires X and some
additional libraries to be installed. For more information on this
process, refer to the Vim documentation.</para>
process, refer to the Vim documentation and the Vim installation page
in the BLFS book at <ulink
url="http://www.linuxfromscratch.org/blfs/view/cvs/postlfs/editors.html#postlfs-editors-vim"/>
.</para>
</sect2>

View File

@@ -152,12 +152,27 @@ immediately accessible.</para>
<para>When you plug in a device, e.g. a USB MP3 player, the kernel
recognizes that the device is now connected and generates a hotplug
event. The driver will already have been loaded (either because it was
compiled into the kernel, or it was loaded via the
<command>S05modules</command> bootscript) so <command>udev</command>
will simply be called upon to create the relevant device node
according to the <systemitem class="filesystem">sysfs</systemitem>
data available in <filename class="directory">/sys</filename>.</para>
event. If the driver is already loaded (either because it was compiled
into the kernel, or it was loaded via the
<command>S05modules</command> bootscript) <command>udev</command> will
be called upon to create the relevant device node(s) according to the
<systemitem class="filesystem">sysfs</systemitem> data available in
<filename class="directory">/sys</filename>. If the driver for the
just plugged in device is available as a module but currently unloaded,
then attaching the device to the system will only cause the kernel's
bus driver to generate a hotplug event that notifies userspace of the
new device connection and it not being attached to a driver. In
effect, nothing happens and the device itself is not usable
yet.</para>
<para>If you are building a system that has a lot of drivers compiled
as modules rather than directly built into the kernel and using the
<command>S05modules</command> is not practical then the Hotplug
package (see <ulink url="http://linux-hotplug.sourceforge.net/"/>) can
be beneficial. When the Hotplug package is installed it will respond
to the aforementioned kernel's bus driver hotplug events. The Hotplug
package will load the appropriate module and make this device
available by creating the device node(s) for it.</para>
</sect2>
<sect2>

View File

@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!ENTITY version "6.0-testing-20040810">
<!ENTITY releasedate "August 10, 2004">
<!ENTITY milestone "6.0">
<!ENTITY version "6.0-testing-20040817">
<!ENTITY releasedate "August 17, 2004">
<!ENTITY lfs-root "http://www.linuxfromscratch.org/">
<!ENTITY blfs-root "&lfs-root;blfs/">
@@ -20,7 +19,7 @@
<!ENTITY bash-version "3.0">
<!ENTITY binutils-version "2.15.91.0.2">
<!ENTITY bison-version "1.875a">
<!ENTITY bootscripts-version "2.2.1">
<!ENTITY bootscripts-version "2.2.2">
<!ENTITY bzip2-version "1.0.2">
<!ENTITY coreutils-version "5.2.1">
<!ENTITY dejagnu-version "1.4.4">

View File

@@ -18,6 +18,11 @@ for their contributions to the Linux From Scratch Project.</para>
Beekmans</ulink> &lt;gerard@linuxfromscratch.org&gt; -- Linux From
Scratch initiator, LFS Project organizer.</para></listitem>
<listitem><para><ulink
url="mailto:theladyskye@linuxfromscratch.org">Christine
Barczak</ulink> &lt;theladyskye@linuxfromscratch.org&gt; -- LFS Book
Editor.</para></listitem>
<listitem><para><ulink
url="mailto:matthew@linuxfromscratch.org">Matthew Burgess</ulink>
&lt;matthew@linuxfromscratch.org&gt; -- LFS Project Co-Leader, LFS