mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-03-05 22:04:48 +00:00
Applied Alex's grammatic-fixes patch.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2128 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
69f8606daf
commit
bed61bb6ad
@ -72,8 +72,8 @@ string of text to the screen) from scratch every time he creates a
|
||||
program.</para></sect4>
|
||||
|
||||
<sect4><title>libsupc++</title>
|
||||
<para>libsup++ provides support for the c++ programming language. Among other
|
||||
things, libsup++ contains routines for exception handling.</para></sect4>
|
||||
<para>libsupc++ provides support for the c++ programming language. Among other
|
||||
things, libsupc++ contains routines for exception handling.</para></sect4>
|
||||
|
||||
</sect3>
|
||||
|
||||
|
@ -11,16 +11,17 @@
|
||||
<para>The Linux kernel is at the core of every Linux system. It's what makes
|
||||
Linux tick. When a computer is turned on and boots a Linux system, the
|
||||
very first piece of Linux software that gets loaded is the kernel. The
|
||||
kernel initializes the system's hardware components such as serial
|
||||
ports, parallel ports, sound cards, network cards, IDE controllers, SCSI
|
||||
controllers and a lot more. In a nutshell the kernel makes the hardware
|
||||
available so that the software can run.</para></sect4>
|
||||
kernel initializes the system's hardware components: serial ports, parallel
|
||||
ports, sound cards, network cards, IDE controllers, SCSI controllers and a
|
||||
lot more. In a nutshell the kernel makes the hardware available so that the
|
||||
software can run.</para></sect4>
|
||||
|
||||
<sect4><title>linux kernel headers</title>
|
||||
<para>These are the files we copy to /usr/include/{linux,asm} in chapter
|
||||
5. They should match those which glibc was compiled against and so
|
||||
should <emphasis>not</emphasis> be replaced when upgrading the kernel.
|
||||
They are essential for compiling many programs.</para></sect4>
|
||||
<para>These are the files we copy to
|
||||
<filename>/usr/include/{linux,asm}</filename> in chapter 5. They should
|
||||
match those which glibc was compiled against and therefore should
|
||||
<emphasis>not</emphasis> be replaced when upgrading the kernel. They are
|
||||
essential for compiling many programs.</para></sect4>
|
||||
|
||||
</sect3>
|
||||
|
||||
|
@ -59,8 +59,11 @@
|
||||
</itemizedlist>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>September 21st, 2002 [timothy]: Chapter 02:
|
||||
Applied Bill Maltby's grammatic-fixes patch.</para></listitem>
|
||||
<listitem><para>September 22nd, 2002 [timothy]: Chapter 06: Applied Alex's
|
||||
grammatic-fixes patch.</para></listitem>
|
||||
|
||||
<listitem><para>September 21st, 2002 [timothy]: Chapter 02: Applied Bill
|
||||
Maltby's grammatic-fixes patch.</para></listitem>
|
||||
|
||||
<listitem><para>September 21st, 2002 [timothy]: Chapter 06 - Zlib:
|
||||
<userinput>mv</userinput> shared lib to /lib.</para></listitem>
|
||||
|
@ -2,11 +2,11 @@
|
||||
<title>Command explanations</title>
|
||||
|
||||
<para><userinput>patch -Np1 -i ../glibc-&glibc-patch-version;.patch:</userinput>
|
||||
This patch converts all occurances of <filename>$(PERL)</filename> to
|
||||
This patch converts all occurrences of <filename>$(PERL)</filename> to
|
||||
<filename>/usr/bin/perl</filename> in the
|
||||
<filename>malloc/Makefile</filename> file. This is done because Glibc can't
|
||||
autodetect the location of perl because perl has yet to be installed. The
|
||||
patch also replaces all occurances of <emphasis>root</emphasis> with
|
||||
patch also replaces all occurrences of <emphasis>root</emphasis> with
|
||||
<emphasis>0</emphasis> in the <filename>login/Makefile</filename> file.
|
||||
This is done because Glibc itself isn't installed yet and therefore
|
||||
username to userid resolving isn't working yet, so a <userinput>chown root
|
||||
@ -24,7 +24,7 @@ that it can't read the file, so we simply create an empty file (the empty
|
||||
file will have Glibc default to using /lib and /usr/lib which is fine).</para>
|
||||
|
||||
<para><userinput>--disable-profile:</userinput> This disables the building
|
||||
of libraries with profiling information. This command may be ommitted if
|
||||
of libraries with profiling information. This command may be omitted if
|
||||
you plan to do profiling.</para>
|
||||
|
||||
<para><userinput>--enable-add-ons:</userinput> This enables the add-on that
|
||||
|
@ -1,11 +1,11 @@
|
||||
<sect2>
|
||||
<title>Why we copy the kernel headers and don't symlink them</title>
|
||||
|
||||
<para>In the past it was common practice for people to symlink the
|
||||
/usr/include/linux and asm directories to /usr/src/linux/include/linux
|
||||
and asm respectively. This is a <emphasis>bad</emphasis> idea as
|
||||
this extract from a post by Linus Torvalds to the Linux Kernel
|
||||
Mailing List points out:</para>
|
||||
<para>In the past it was common practice to symlink the
|
||||
<filename class="directory">/usr/include/{linux,asm}</filename> directories
|
||||
to <filename class="directory">/usr/src/linux/include/{linux,asm}</filename>.
|
||||
This was a <emphasis>bad</emphasis> practice, as the following extract from a
|
||||
post by Linus Torvalds to the Linux Kernel Mailing List points out:</para>
|
||||
|
||||
<screen>I would suggest that people who compile new kernels should:
|
||||
|
||||
@ -25,11 +25,16 @@ has that broken symlink, and people still remember that the linux
|
||||
sources should go into "/usr/src/linux" even though that hasn't been
|
||||
true in a _loong_ time.</screen>
|
||||
|
||||
<para>The relevant part here is where he states that the headers should
|
||||
be the ones which <emphasis>glibc was compiled against</emphasis>. These are
|
||||
the headers which should remain accessible and so by copying them, we ensure
|
||||
that we follow these guidelines. Also note that as long as you don't have
|
||||
those symlinks, it is perfectly fine to have the kernel sources
|
||||
in <filename>/usr/src/linux</filename>.</para>
|
||||
<para>The essential part is where Linus states that the header files should be
|
||||
<emphasis>the ones which glibc was compiled against</emphasis>. These are
|
||||
the headers that should be used when you later compile other packages, as they
|
||||
are the ones that match the object-code library files. By copying the headers,
|
||||
we ensure that they remain available if later you upgrade your kernel.</para>
|
||||
|
||||
<para>Note, by the way, that it is perfectly all right to have the kernel sources
|
||||
in <filename class="directory">/usr/src/linux</filename>, as long as you don't
|
||||
have the <filename class="directory">/usr/include/{linux,asm}</filename>
|
||||
symlinks.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -1,38 +1,36 @@
|
||||
<sect2>
|
||||
<title>Command explanations</title>
|
||||
|
||||
<para><userinput>ln -s /static/bin/pwd /bin/pwd</userinput>: The kernel
|
||||
source hard-wires the path to <filename>pwd</filename> to be
|
||||
<filename>/bin/pwd</filename> so we create a temporary symlink to deal with
|
||||
it.</para>
|
||||
<para><userinput>ln -s /static/bin/pwd /bin/pwd</userinput>: In the kernel
|
||||
source, the path to the <filename>pwd</filename> program is hard-wired as
|
||||
<filename>/bin/pwd</filename>, so we create a temporary symlink to account
|
||||
for that. At the end we remove it again.</para>
|
||||
|
||||
<para><userinput>make mrproper:</userinput> This will ensure that the kernel
|
||||
tree is absolutely clean. We do this because the kernel team recommend
|
||||
that this is done prior to <emphasis>each</emphasis> kernel compilation,
|
||||
and that we shouldn't rely on the source tree being automatically clean
|
||||
after untarring.</para>
|
||||
<para><userinput>make mrproper</userinput>: This ensures that the kernel
|
||||
tree is absolutely clean. The kernel team recommends that this command be
|
||||
issued prior to <emphasis>each</emphasis> kernel compilation, and that you
|
||||
shouldn't rely on the source tree being clean after untarring.</para>
|
||||
|
||||
<para><userinput>make include/linux/version.h</userinput> and
|
||||
<userinput>make symlinks</userinput>: This creates the
|
||||
<filename>include/linux/version.h</filename>, as well as the <filename
|
||||
class="symlink">include/asm</filename> symlink.</para>
|
||||
<filename>include/linux/version.h</filename> file and the platform-specific
|
||||
<filename class="symlink">include/asm</filename> symlink.</para>
|
||||
|
||||
<para><userinput>mkdir /usr/include/asm</userinput>
|
||||
, <userinput>cp include/asm/* /usr/include/asm</userinput> and
|
||||
<userinput>cp include/asm-generic /usr/include</userinput>:
|
||||
This copies the platform-specific assembler kernel header files to
|
||||
<userinput>cp -R include/asm-generic /usr/include</userinput>:
|
||||
These commands copy the platform-specific assembler kernel header files to
|
||||
<filename class="directory">/usr/include/asm</filename> and <filename
|
||||
class="directory">/usr/include/asm-generic</filename></para>
|
||||
class="directory">/usr/include/asm-generic</filename>.</para>
|
||||
|
||||
<para><userinput>cp -R include/linux /usr/include</userinput>:
|
||||
This command copies the cross-platform kernel header files to
|
||||
<filename>/usr/include</filename></para>
|
||||
<filename>/usr/include</filename>.</para>
|
||||
|
||||
<para><userinput>touch /usr/include/linux/autoconf.h</userinput>: Some
|
||||
kernel header files include this <filename>autoconf.h</filename> file, but
|
||||
outside the Linux source tree, that file has no meaning so we just create
|
||||
an empty one so we don't get compile errors whenever it happens to be a
|
||||
dependency of another kernel header file.</para>
|
||||
<para><userinput>touch /usr/include/linux/autoconf.h</userinput>: This
|
||||
creates an empty <filename>autoconf.h</filename> file. As we do not yet
|
||||
configure the kernel, we have to create this file ourselves for those few
|
||||
kernel header files that make use of it, to avoid compilation failures.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -1,14 +1,12 @@
|
||||
<sect2>
|
||||
<title>Installation of the Linux Kernel</title>
|
||||
<title>Installation of the kernel headers</title>
|
||||
|
||||
<para>We won't be compiling a new kernel image yet. We'll do that after we
|
||||
have finished the installation of the basic system software in this
|
||||
chapter. But because certain software needs the kernel header files, we're
|
||||
going to unpack the kernel archive now and set it up so that we can
|
||||
compile the packages that need the kernel.</para>
|
||||
<para>We won't be compiling a new kernel yet -- we'll do that when we have
|
||||
finished the installation of all the packages. But as some packages need the
|
||||
kernel header files, we're going to unpack the kernel archive now, set it up,
|
||||
and copy the header files to where they will be found by these packages.</para>
|
||||
|
||||
<para>The kernel configuration file is created by running the following
|
||||
command:</para>
|
||||
<para>The kernel headers are copied by running the following commands:</para>
|
||||
|
||||
<para><screen><userinput>ln -s /static/bin/pwd /bin/pwd &&
|
||||
make mrproper &&
|
||||
|
@ -2,7 +2,7 @@
|
||||
<title>Command explanations</title>
|
||||
|
||||
<para><userinput>patch -Np1 -i ../sh-utils-&sh-utils-hostname-patch-version;.patch:</userinput> This patch
|
||||
supresses the build of the hostname program which we will be installed
|
||||
suppresses the build of the hostname program which we will be installed
|
||||
later with the net-tools package. The hostname program from the net-tools
|
||||
package is a much better version (and in some cases even required since it
|
||||
supports options that are needed by some programs such as XFree86).</para>
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
<!ENTITY book SYSTEM "book/book.xml">
|
||||
|
||||
<!ENTITY version "20020921">
|
||||
<!ENTITY releasedate "September 21st, 2002">
|
||||
<!ENTITY version "20020922">
|
||||
<!ENTITY releasedate "September 22nd, 2002">
|
||||
|
||||
<!ENTITY ftp-root "ftp://ftp.linuxfromscratch.org">
|
||||
<!ENTITY http-root "http://ftp.linuxfromscratch.org">
|
||||
|
Loading…
Reference in New Issue
Block a user