mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-19 03:39:20 +01:00
Removed --enable-threads=posix from static gcc compilation. Fixed changelog and a number of typos.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2121 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
eb7df24002
commit
26e62aa22d
@ -2,7 +2,7 @@
|
|||||||
<title>Acknowledgments</title>
|
<title>Acknowledgments</title>
|
||||||
<?dbhtml filename="acknowledgements.html" dir="chapter01"?>
|
<?dbhtml filename="acknowledgements.html" dir="chapter01"?>
|
||||||
|
|
||||||
<para>We would like to thank the following people and organizations for their
|
<para>We thank the following people and organizations for their
|
||||||
contributions toward the Linux From Scratch project:</para>
|
contributions toward the Linux From Scratch project:</para>
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
<listitem><para>gcc-3.2</para></listitem>
|
<listitem><para>gcc-3.2</para></listitem>
|
||||||
<listitem><para>gettext-0.11.5</para></listitem>
|
<listitem><para>gettext-0.11.5</para></listitem>
|
||||||
<listitem><para>groff-1.18</para></listitem>
|
<listitem><para>groff-1.18</para></listitem>
|
||||||
|
<listitem><para>gzip-1.2.4b.patch</para></listitem>
|
||||||
<listitem><para>lfs-bootscripts-1.10</para></listitem>
|
<listitem><para>lfs-bootscripts-1.10</para></listitem>
|
||||||
<listitem><para>linux-2.4.19</para></listitem>
|
<listitem><para>linux-2.4.19</para></listitem>
|
||||||
<listitem><para>MAKEDEV-1.7</para></listitem>
|
<listitem><para>MAKEDEV-1.7</para></listitem>
|
||||||
@ -41,6 +42,7 @@
|
|||||||
<listitem><para>gcc-3.2.patch</para></listitem>
|
<listitem><para>gcc-3.2.patch</para></listitem>
|
||||||
<listitem><para>glibc-2.2.5-2.patch</para></listitem>
|
<listitem><para>glibc-2.2.5-2.patch</para></listitem>
|
||||||
<listitem><para>gzip-1.2.4b.patch</para></listitem>
|
<listitem><para>gzip-1.2.4b.patch</para></listitem>
|
||||||
|
<listitem><para>kbd-1.06-3.patch</para></listitem>
|
||||||
<listitem><para>ncurses-5.2.patch</para></listitem>
|
<listitem><para>ncurses-5.2.patch</para></listitem>
|
||||||
<listitem><para>procps-2.0.7.patch</para></listitem>
|
<listitem><para>procps-2.0.7.patch</para></listitem>
|
||||||
<listitem><para>sh-utils-2.0-hostname.patch</para></listitem>
|
<listitem><para>sh-utils-2.0-hostname.patch</para></listitem>
|
||||||
@ -52,10 +54,15 @@
|
|||||||
<listitem><para>Removed:
|
<listitem><para>Removed:
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem><para>gzip-1.2.4a.patch</para></listitem>
|
<listitem><para>gzip-1.2.4a.patch</para></listitem>
|
||||||
|
<listitem><para>kbd-1.06-2.patch</para></listitem>
|
||||||
<listitem><para>reiserfsprogs-3.x.1b</para></listitem>
|
<listitem><para>reiserfsprogs-3.x.1b</para></listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
|
|
||||||
|
<listitem><para>September 20th, 2002 [timothy]: Chapter 05 - GCC:
|
||||||
|
Removed the <userinput>--enable-threads=posix</userinput> flag since we
|
||||||
|
don't build a C++ compiler in this chapter.</para></listitem>
|
||||||
|
|
||||||
<listitem><para>September 18th, 2002 [timothy]: Chapter 05 - Introduction:
|
<listitem><para>September 18th, 2002 [timothy]: Chapter 05 - Introduction:
|
||||||
Removed paragraph about static linking since it seems misleading and is
|
Removed paragraph about static linking since it seems misleading and is
|
||||||
covered in better detail in <emphasis>Why Static</emphasis>.</para></listitem>
|
covered in better detail in <emphasis>Why Static</emphasis>.</para></listitem>
|
||||||
|
@ -10,14 +10,14 @@ throughout the book. Following are some examples:</para>
|
|||||||
<blockquote><para>This form of text is designed to be typed exactly
|
<blockquote><para>This form of text is designed to be typed exactly
|
||||||
as seen unless otherwise noted in the surrounding text. It is also used
|
as seen unless otherwise noted in the surrounding text. It is also used
|
||||||
in the explanation sections to identify which of the commands is being
|
in the explanation sections to identify which of the commands is being
|
||||||
referred to.</para></blockquote>
|
referenced.</para></blockquote>
|
||||||
|
|
||||||
<para><filename>install-info: unknown option
|
<para><filename>install-info: unknown option
|
||||||
`--dir-file=/mnt/lfs/usr/info/dir'</filename></para>
|
`--dir-file=/mnt/lfs/usr/info/dir'</filename></para>
|
||||||
|
|
||||||
<blockquote><para>This form of text (fixed width text) is showing screen
|
<blockquote><para>This form of text (fixed width text) is showing screen
|
||||||
output, probably as the result of commands issued and is also used to
|
output, probably as the result of commands issued, and is also used to
|
||||||
show filenames such as <filename>/etc/lilo.conf</filename>.</para></blockquote>
|
show filenames, such as <filename>/etc/lilo.conf</filename>.</para></blockquote>
|
||||||
|
|
||||||
<para><emphasis>Emphasis</emphasis></para>
|
<para><emphasis>Emphasis</emphasis></para>
|
||||||
|
|
||||||
|
@ -5,16 +5,16 @@
|
|||||||
<para>We are going to build the LFS system by using a previously installed
|
<para>We are going to build the LFS system by using a previously installed
|
||||||
Linux distribution such as Debian, SuSE, Slackware, Mandrake, RedHat, etc.
|
Linux distribution such as Debian, SuSE, Slackware, Mandrake, RedHat, etc.
|
||||||
We will use the existing Linux system as the development platform, because
|
We will use the existing Linux system as the development platform, because
|
||||||
we need tools like a compiler, linker, text editor, and other necessary
|
we need tools like a compiler, linker, text editor, and other development
|
||||||
development tools to build our system. Ordinarily, the required tools are
|
tools to build our system. Ordinarily, the required tools are available by
|
||||||
available by default if we selected "development" as one of our installation
|
default if we selected "development" as one of our installation options
|
||||||
options when we installed the distributed Linux.</para>
|
when we installed a Linux distribution.</para>
|
||||||
|
|
||||||
<para>After you have downloaded the necessary packages that make up an LFS
|
<para>After you have downloaded the packages that make up an LFS system,
|
||||||
system we will create a new Linux native partition and filesystem. Here
|
we will create a new Linux native partition and filesystem. Here is where
|
||||||
is where the LFS system will be compiled and installed.</para>
|
the LFS system will be compiled and installed.</para>
|
||||||
|
|
||||||
<para>The next step, chapter 5, will discuss the installation of a number of
|
<para>The next step, Chapter 5, will discuss the installation of a number of
|
||||||
packages that will form the basic development suite which is used to
|
packages that will form the basic development suite which is used to
|
||||||
build the actual system, or needed to resolve circular dependencies. For
|
build the actual system, or needed to resolve circular dependencies. For
|
||||||
example, you need a compiler to build a new compiler, and you need a shell
|
example, you need a compiler to build a new compiler, and you need a shell
|
||||||
@ -28,29 +28,29 @@ do so because the pieces of the program that would normally remain in the
|
|||||||
libraries are copied from the libraries and built right into the program.
|
libraries are copied from the libraries and built right into the program.
|
||||||
Ordinarily, software is built with dynamic linking. This conserves storage
|
Ordinarily, software is built with dynamic linking. This conserves storage
|
||||||
space and increases the efficiency of many programs. We statically link
|
space and increases the efficiency of many programs. We statically link
|
||||||
our software in chapter 5 because we will in theory be moving our
|
our software in Chapter 5 because we will, in theory, be moving our
|
||||||
development system to a virtual environment where the already mentioned
|
development system to a virtual environment where the already mentioned
|
||||||
libraries will be absent. If the software is built dynamically, our
|
libraries will be absent. If the software is built dynamically, our
|
||||||
development suite will not function. Since the libraries we are talking
|
development suite will not function. Since the libraries we are talking
|
||||||
about are provided by our distribution Linux, the goal of chapter 5 is to
|
about are provided by our distribution Linux, the goal of Chapter 5 is to
|
||||||
build a development environment where those libraries are not required
|
build a development environment where those libraries are not required
|
||||||
and is therefore independent of the distribution.</para>
|
and is therefore independent of the distribution.</para>
|
||||||
|
|
||||||
<para>In chapter 6 we will build and install our final system. We will use
|
<para>In Chapter 6 we will build and install our final system. We will use
|
||||||
the chroot program to enter a virtual environment and start a new shell
|
the chroot program to enter a virtual environment and start a new shell
|
||||||
whose root directory will be set to the partition where we built all the
|
whose root directory will be set to the partition where we built all the
|
||||||
chapter 5 software. This is very similar to rebooting and instructing the
|
Chapter 5 software. This is very similar to rebooting and instructing the
|
||||||
kernel to mount our LFS partition as the root partition. The reason that
|
kernel to mount our LFS partition as the root partition. The reason that
|
||||||
we don't actually reboot, but instead chroot, is that creating a static
|
we don't actually reboot, but instead chroot, is that creating a bootable
|
||||||
system that we can boot into requires more work that simply isn't necessary.
|
static system requires additional work which simply isn't necessary. As
|
||||||
As well, we can continue to use our platform system while we are building
|
well, we can continue to use our platform system while we are building LFS.
|
||||||
LFS. While software is being compiled and installed you can simply switch
|
While software is being compiled and installed you can simply switch to a
|
||||||
to a different VC (Virtual Console) or X desktop and continue using your
|
different VC (Virtual Console) or X desktop and continue using your
|
||||||
computer normally.</para>
|
computer normally.</para>
|
||||||
|
|
||||||
<para>When all the software from chapter 6 is installed, chapters 7, 8 and 9
|
<para>When all the software from Chapter 6 is installed, Chapters 7, 8 and 9
|
||||||
will help us finalize our installation. We will set up our boot
|
will help us finalize our installation. We will set up our boot
|
||||||
scripts in chapter 7. In chapter 8 we will build our final linux kernel and
|
scripts in Chapter 7. In Chapter 8 we will build our final linux kernel and
|
||||||
set up the Linux boot loader. Chapter 9 has some pointers to help you after
|
set up the Linux boot loader. Chapter 9 has some pointers to help you after
|
||||||
you finish the book. Then finally, you reboot your system and boot into your
|
you finish the book. Then finally, you reboot your system and boot into your
|
||||||
new LFS system, and start to really use it.</para>
|
new LFS system, and start to really use it.</para>
|
||||||
@ -60,8 +60,8 @@ we will take are discussed in the chapters and package descriptions as you
|
|||||||
progress through them. If something isn't completely clear now, don't worry.
|
progress through them. If something isn't completely clear now, don't worry.
|
||||||
It should become very clear shortly.</para>
|
It should become very clear shortly.</para>
|
||||||
|
|
||||||
<para>Please read chapter 2 carefully as it explains a few important things
|
<para>Please read Chapter 2 carefully as it explains a few important things
|
||||||
you should be aware of before you begin to work through chapters 5 and
|
you should be aware of before you begin to work through Chapters 5 and
|
||||||
later.</para>
|
later.</para>
|
||||||
|
|
||||||
</sect1>
|
</sect1>
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
the variable $LFS will be used frequently. $LFS must at all times be
|
the variable $LFS will be used frequently. $LFS must at all times be
|
||||||
replaced with the directory where the partition that contains the LFS system
|
replaced with the directory where the partition that contains the LFS system
|
||||||
is mounted. How to create and where to mount the partition will be
|
is mounted. How to create and where to mount the partition will be
|
||||||
explained in full detail in chapter 4. For example, let's assume that
|
explained in full detail in Chapter 4. For example, let's assume that
|
||||||
the LFS partition is mounted on /mnt/lfs.</para>
|
the LFS partition is mounted on /mnt/lfs.</para>
|
||||||
|
|
||||||
<para>For example when you are told to run a command like
|
<para>For example when you are told to run a command like
|
||||||
|
@ -14,7 +14,7 @@ times it takes to compile something varies too much. One package may take
|
|||||||
<emphasis>Static Bash Unit</emphasis> or <emphasis>SBU</emphasis>.</para>
|
<emphasis>Static Bash Unit</emphasis> or <emphasis>SBU</emphasis>.</para>
|
||||||
|
|
||||||
<para>It works like this: the very first package you compile in this book
|
<para>It works like this: the very first package you compile in this book
|
||||||
is Bash in chapter 5 and it'll be statically linked. The time it takes to
|
is Bash in Chapter 5 and it'll be statically linked. The time it takes to
|
||||||
compile this package will be the basis and called the SBU. All other
|
compile this package will be the basis and called the SBU. All other
|
||||||
compile times are relative to the time it takes to install Bash. For
|
compile times are relative to the time it takes to install Bash. For
|
||||||
example, GCC-3.2 takes about 9.5 SBUs and it's proven that this number is
|
example, GCC-3.2 takes about 9.5 SBUs and it's proven that this number is
|
||||||
|
@ -63,8 +63,8 @@ can be used they need to be uncompressed first.</para>
|
|||||||
it: either the directory that contains the sources can be deleted, or it
|
it: either the directory that contains the sources can be deleted, or it
|
||||||
can be kept. We highly recommend deleting it. If you don't do this and
|
can be kept. We highly recommend deleting it. If you don't do this and
|
||||||
try to re-use the same source later on in the book (for example re-using
|
try to re-use the same source later on in the book (for example re-using
|
||||||
the source trees from chapter 5 for use in chapter 6), it may not work
|
the source trees from Chapter 5 for use in Chapter 6), it may not work
|
||||||
as you expect it to. Source trees from chapter 5 will have your host
|
as you expect it to. Source trees from Chapter 5 will have your host
|
||||||
distribution's settings, which don't always apply to the LFS system
|
distribution's settings, which don't always apply to the LFS system
|
||||||
after you enter the chroot'ed environment. Even running something like
|
after you enter the chroot'ed environment. Even running something like
|
||||||
<emphasis>make clean</emphasis> doesn't always guarantee a clean source
|
<emphasis>make clean</emphasis> doesn't always guarantee a clean source
|
||||||
|
@ -20,7 +20,7 @@ directory is chosen, just make sure you remember what you chose.</para>
|
|||||||
<para>Replace <quote>xxx</quote> by the partition's designation (like hda11).</para>
|
<para>Replace <quote>xxx</quote> by the partition's designation (like hda11).</para>
|
||||||
|
|
||||||
<para>This directory (/mnt/lfs) is the $LFS variable you have read about
|
<para>This directory (/mnt/lfs) is the $LFS variable you have read about
|
||||||
back in chapter 2. If you were planning to make use of the $LFS environment
|
back in Chapter 2. If you were planning to make use of the $LFS environment
|
||||||
variable, <userinput>export LFS=/mnt/lfs</userinput> has to be executed
|
variable, <userinput>export LFS=/mnt/lfs</userinput> has to be executed
|
||||||
now.</para>
|
now.</para>
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ library which is becoming obsolete.</para>
|
|||||||
|
|
||||||
<para>It is not strictly necessary for the static bash to be linked
|
<para>It is not strictly necessary for the static bash to be linked
|
||||||
against libncurses (it can link against a static termcap for the time
|
against libncurses (it can link against a static termcap for the time
|
||||||
being just fine because we will reinstall Bash in chapter 6 anyways,
|
being just fine because we will reinstall Bash in Chapter 6 anyways,
|
||||||
where we will use libncurses), but it's a good test to make sure that
|
where we will use libncurses), but it's a good test to make sure that
|
||||||
the Ncurses package has been installed properly. If not, you will get in
|
the Ncurses package has been installed properly. If not, you will get in
|
||||||
trouble later on in this chapter when you install the Texinfo package.
|
trouble later on in this chapter when you install the Texinfo package.
|
||||||
|
@ -42,7 +42,7 @@ make: [install] Error 2 (ignored)</screen></blockquote>
|
|||||||
<para>then that means that you are probably using Debian, and that you have an
|
<para>then that means that you are probably using Debian, and that you have an
|
||||||
old version of the texinfo package. This error is not severe by any means: the
|
old version of the texinfo package. This error is not severe by any means: the
|
||||||
info pages will be installed when we recompile bash dynamically in
|
info pages will be installed when we recompile bash dynamically in
|
||||||
chapter 6, so you can ignore it.</para>
|
Chapter 6, so you can ignore it.</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ command to create the directory:</para>
|
|||||||
|
|
||||||
<para><screen><userinput>mkdir $LFS/static</userinput></screen></para>
|
<para><screen><userinput>mkdir $LFS/static</userinput></screen></para>
|
||||||
|
|
||||||
<para>You may want to move the packages you downloaded in chapter 3 to this
|
<para>You may want to move the packages you downloaded in Chapter 3 to this
|
||||||
<filename class="directory">$LFS/static</filename> directory, perhaps
|
<filename class="directory">$LFS/static</filename> directory, perhaps
|
||||||
create a subdirectory <filename
|
create a subdirectory <filename
|
||||||
class="directory">$LFS/static/src</filename> to keep them in.</para>
|
class="directory">$LFS/static/src</filename> to keep them in.</para>
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<para><userinput>patch -Np1 -i ../fileutils-&fileutils-version;.patch:</userinput> This is used to fix a problem with building fileutils statically on
|
<para><userinput>patch -Np1 -i ../fileutils-&fileutils-version;.patch:</userinput> This is used to fix a problem with building fileutils statically on
|
||||||
glibc 2.2.3 systems. If this isn't done, then there is the possibility of
|
glibc 2.2.3 systems. If this isn't done, then there is the possibility of
|
||||||
all of the fileutils programs causing segmentation faults once chroot is
|
all of the fileutils programs causing segmentation faults once chroot is
|
||||||
entered in chapter 6.</para>
|
entered in Chapter 6.</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
@ -12,13 +12,10 @@ prefix during ./configure. We pass the real install prefix during the
|
|||||||
make install command later.</para>
|
make install command later.</para>
|
||||||
|
|
||||||
<para><userinput>--enable-languages=c:</userinput> This builds the C
|
<para><userinput>--enable-languages=c:</userinput> This builds the C
|
||||||
compiler. The C++ compiler will be built in chapter 6, when we rebuild
|
compiler. The C++ compiler will be built in Chapter 6, when we rebuild
|
||||||
GCC. Other compilers are available as well. If they are needed,
|
GCC. Other compilers are available as well. If they are needed,
|
||||||
the --enable-languages parameter may be omitted.</para>
|
the --enable-languages parameter may be omitted.</para>
|
||||||
|
|
||||||
<para><userinput>--enable-threads=posix:</userinput> This enables C++
|
|
||||||
exception handling for multithreaded code.</para>
|
|
||||||
|
|
||||||
<para><userinput>echo "#define HAVE_GAS_HIDDEN 1":</userinput>
|
<para><userinput>echo "#define HAVE_GAS_HIDDEN 1":</userinput>
|
||||||
This defines the .hidden assembler directive so that we don't build
|
This defines the .hidden assembler directive so that we don't build
|
||||||
a faulty Glibc later on.</para>
|
a faulty Glibc later on.</para>
|
||||||
|
@ -18,7 +18,7 @@ been warned.</para>
|
|||||||
mkdir ../gcc-build &&
|
mkdir ../gcc-build &&
|
||||||
cd ../gcc-build &&
|
cd ../gcc-build &&
|
||||||
../gcc-&gcc-version;/configure --prefix=/static --enable-languages=c \
|
../gcc-&gcc-version;/configure --prefix=/static --enable-languages=c \
|
||||||
--disable-nls --disable-shared --enable-threads=posix &&
|
--disable-nls --disable-shared &&
|
||||||
echo "#define HAVE_GAS_HIDDEN 1" >> gcc/auto-host.h &&
|
echo "#define HAVE_GAS_HIDDEN 1" >> gcc/auto-host.h &&
|
||||||
make BOOT_LDFLAGS=-static bootstrap &&
|
make BOOT_LDFLAGS=-static bootstrap &&
|
||||||
make prefix=$LFS/static install &&
|
make prefix=$LFS/static install &&
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
<title>Install all software as an unprivileged user</title>
|
<title>Install all software as an unprivileged user</title>
|
||||||
<?dbhtml filename="installasuser.html" dir="chapter05"?>
|
<?dbhtml filename="installasuser.html" dir="chapter05"?>
|
||||||
|
|
||||||
<para>When you are logged in as root during chapter 5, it is possible
|
<para>When you are logged in as root during Chapter 5, it is possible
|
||||||
that some files of your host system will be overwritten by the ones
|
that some files of your host system will be overwritten by the ones
|
||||||
you'll build in chapter 5. There can be all kinds of reasons for this
|
you'll build in Chapter 5. There can be all kinds of reasons for this
|
||||||
to happen, for example because the $LFS environment variable is not
|
to happen, for example because the $LFS environment variable is not
|
||||||
set. Overwriting some files from your host system will most likely
|
set. Overwriting some files from your host system will most likely
|
||||||
cause all kinds of problems, so it's a good idea to be logged in as
|
cause all kinds of problems, so it's a good idea to be logged in as
|
||||||
an unprivileged user during chapter 5. To make sure the environment
|
an unprivileged user during Chapter 5. To make sure the environment
|
||||||
is as clean as possible, we'll create a new user "lfs" that can be
|
is as clean as possible, we'll create a new user "lfs" that can be
|
||||||
used while building the static installation. Issuing the following
|
used while building the static installation. Issuing the following
|
||||||
commands as root will create a new user "lfs":</para>
|
commands as root will create a new user "lfs":</para>
|
||||||
@ -46,8 +46,8 @@ internationalization.</para>
|
|||||||
|
|
||||||
<para>When your host distribution uses a glibc version older than 2.2.4,
|
<para>When your host distribution uses a glibc version older than 2.2.4,
|
||||||
having $LC_ALL set to something else than "C" or "POSIX" while working
|
having $LC_ALL set to something else than "C" or "POSIX" while working
|
||||||
through chapter 5 may cause trouble when you exit the chroot environment
|
through Chapter 5 may cause trouble when you exit the chroot environment
|
||||||
of chapter 6 and try to return to it. By setting this to "POSIX" ("C"
|
of Chapter 6 and try to return to it. By setting this to "POSIX" ("C"
|
||||||
is an alias for "POSIX") we ensure that everything will work as expected
|
is an alias for "POSIX") we ensure that everything will work as expected
|
||||||
in the chroot environment.</para>
|
in the chroot environment.</para>
|
||||||
|
|
||||||
|
@ -24,8 +24,8 @@ NOTE: to install su, run 'make install-root' as root</screen></blockquote>
|
|||||||
|
|
||||||
<para>You can safely ignore that warning. You need to be logged in as root
|
<para>You can safely ignore that warning. You need to be logged in as root
|
||||||
in order to install su the way Sh-utils wants to install it, which is being
|
in order to install su the way Sh-utils wants to install it, which is being
|
||||||
suid root. Because we don't need su during chapter 6, and su will be properly
|
suid root. Because we don't need su during Chapter 6, and su will be properly
|
||||||
installed when we re-install Sh-utils in chapter 6, you can just
|
installed when we re-install Sh-utils in Chapter 6, you can just
|
||||||
pretend you didn't see it.</para>
|
pretend you didn't see it.</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
@ -46,9 +46,9 @@ you need to make sure that the libraries are statically linked when you build
|
|||||||
them, hence the <userinput>--enable-static-link</userinput>,
|
them, hence the <userinput>--enable-static-link</userinput>,
|
||||||
<userinput>--disable-shared</userinput>, and
|
<userinput>--disable-shared</userinput>, and
|
||||||
<userinput>-static</userinput> flags used
|
<userinput>-static</userinput> flags used
|
||||||
through chapter 5. Once in chapter 6, the first thing we do is build the
|
through Chapter 5. Once in Chapter 6, the first thing we do is build the
|
||||||
main set of system libraries, glibc. Once this is made we start rebuilding
|
main set of system libraries, glibc. Once this is made we start rebuilding
|
||||||
all the programs we just did in chapter 5, but this time dynamically linked,
|
all the programs we just did in Chapter 5, but this time dynamically linked,
|
||||||
so that we can take advantage of the space saving opportunities.</para>
|
so that we can take advantage of the space saving opportunities.</para>
|
||||||
|
|
||||||
<para>And there you have it, that's why you need to use those weird
|
<para>And there you have it, that's why you need to use those weird
|
||||||
|
@ -41,7 +41,7 @@ or ELF binary), run <userinput>strip --strip-debug filename</userinput>.
|
|||||||
Wildcards can be used to treat multiple files (use something like
|
Wildcards can be used to treat multiple files (use something like
|
||||||
<userinput>strip --strip-debug $LFS/static/bin/*</userinput>).</para>
|
<userinput>strip --strip-debug $LFS/static/bin/*</userinput>).</para>
|
||||||
|
|
||||||
<para>For your convenience, chapter 9 includes one simple command to strip
|
<para>For your convenience, Chapter 9 includes one simple command to strip
|
||||||
all debugging symbols from all programs and libraries on your system.
|
all debugging symbols from all programs and libraries on your system.
|
||||||
Additional information on optimization you can find in the hint at
|
Additional information on optimization you can find in the hint at
|
||||||
<ulink url="&hints-root;optimization.txt"/>.</para>
|
<ulink url="&hints-root;optimization.txt"/>.</para>
|
||||||
|
@ -8,7 +8,7 @@ style init scripts, which may be found at
|
|||||||
<ulink url="&hints-root;bsd-init.txt"/>.</para>
|
<ulink url="&hints-root;bsd-init.txt"/>.</para>
|
||||||
|
|
||||||
<para>If you decide to use BSD style, or some other style scripts, you can
|
<para>If you decide to use BSD style, or some other style scripts, you can
|
||||||
skip chapter 7 when you arrive at it and move on to chapter 8.</para>
|
skip Chapter 7 when you arrive at it and move on to Chapter 8.</para>
|
||||||
|
|
||||||
<para>Install LFS-Bootscripts by running the following command:</para>
|
<para>Install LFS-Bootscripts by running the following command:</para>
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
<?dbhtml filename="changingowner.html" dir="chapter06"?>
|
<?dbhtml filename="changingowner.html" dir="chapter06"?>
|
||||||
|
|
||||||
<para>The first thing we'll do, now that we're <emphasis>root</emphasis>,
|
<para>The first thing we'll do, now that we're <emphasis>root</emphasis>,
|
||||||
is change the ownership of the files and directories installed in chapter 5
|
is change the ownership of the files and directories installed in Chapter 5
|
||||||
to root -- because when later we don't delete the
|
to root -- because when later we don't delete the
|
||||||
<filename class="directory">/static</filename> directory and start adding
|
<filename class="directory">/static</filename> directory and start adding
|
||||||
new users, one of these users might end up owning the statically linked
|
new users, one of these users might end up owning the statically linked
|
||||||
|
@ -39,7 +39,7 @@ cannot remove other users's files from them. The latter is prohibited
|
|||||||
by the so-called "sticky bit" -- the highest bit in the 1777 bit mask.</para>
|
by the so-called "sticky bit" -- the highest bit in the 1777 bit mask.</para>
|
||||||
|
|
||||||
<para>Now that the directories are created, move the source tarballs that
|
<para>Now that the directories are created, move the source tarballs that
|
||||||
were downloaded in chapter 3 to some subdirectory under
|
were downloaded in Chapter 3 to some subdirectory under
|
||||||
<filename class="directory">/usr/src</filename> (you
|
<filename class="directory">/usr/src</filename> (you
|
||||||
will have to create the desired subdirectory yourself).</para>
|
will have to create the desired subdirectory yourself).</para>
|
||||||
|
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
<sect2>
|
<sect2>
|
||||||
<title>Command explanations</title>
|
<title>Command explanations</title>
|
||||||
|
|
||||||
|
<para><userinput>--enable-threads=posix:</userinput> This enables C++
|
||||||
|
exception handling for multithreaded code.</para>
|
||||||
|
|
||||||
<para><userinput>--enable-__cxa_atexit:</userinput> This option will result
|
<para><userinput>--enable-__cxa_atexit:</userinput> This option will result
|
||||||
in C++ shared libraries and C++ programs that are interoperable with other
|
in C++ shared libraries and C++ programs that are interoperable with other
|
||||||
linux distributions.</para>
|
linux distributions.</para>
|
||||||
|
@ -18,7 +18,7 @@ all, you should try to remove the -g value from the CFLAGS variable in the
|
|||||||
<para>At the end of the installation the make install process will print a
|
<para>At the end of the installation the make install process will print a
|
||||||
message stating that /sbin/lilo has to be executed to complete the
|
message stating that /sbin/lilo has to be executed to complete the
|
||||||
update. Don't do this, as it has no use: the /etc/lilo.conf isn't present
|
update. Don't do this, as it has no use: the /etc/lilo.conf isn't present
|
||||||
yet. We will complete the installation of lilo in chapter 8.</para>
|
yet. We will complete the installation of lilo in Chapter 8.</para>
|
||||||
|
|
||||||
<para>The standard LILO prompt, or menu, may be replaced by the
|
<para>The standard LILO prompt, or menu, may be replaced by the
|
||||||
LFS logo, or any logo you like. Martin Imobersteg has written a
|
LFS logo, or any logo you like. Martin Imobersteg has written a
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
<?dbhtml filename="loadkeys.html" dir="chapter07"?>
|
<?dbhtml filename="loadkeys.html" dir="chapter07"?>
|
||||||
|
|
||||||
<para>If you decided to compile your keymap file directly into the kernel
|
<para>If you decided to compile your keymap file directly into the kernel
|
||||||
back at the end of chapter 6, then you strictly speaking don't need to run
|
back at the end of Chapter 6, then you strictly speaking don't need to run
|
||||||
this loadkeys script, since the kernel has already set up the keymap for
|
this loadkeys script, since the kernel has already set up the keymap for
|
||||||
you. You can still run it if you want, it isn't going to hurt you. It could
|
you. You can still run it if you want, it isn't going to hurt you. It could
|
||||||
even be beneficial to keep it in case you run a lot of different kernels
|
even be beneficial to keep it in case you run a lot of different kernels
|
||||||
|
@ -40,7 +40,7 @@ on LFS active:</para>
|
|||||||
<para><screen><userinput>/sbin/lilo</userinput></screen></para>
|
<para><screen><userinput>/sbin/lilo</userinput></screen></para>
|
||||||
|
|
||||||
<para>You may now remove the static directory. If you think you may
|
<para>You may now remove the static directory. If you think you may
|
||||||
need to redo chapter 5, then you may wish to backup the directory before
|
need to redo Chapter 5, then you may wish to backup the directory before
|
||||||
removing it. To remove the static directory, type the following
|
removing it. To remove the static directory, type the following
|
||||||
command:</para>
|
command:</para>
|
||||||
|
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
|
|
||||||
<!ENTITY book SYSTEM "book/book.xml">
|
<!ENTITY book SYSTEM "book/book.xml">
|
||||||
|
|
||||||
<!ENTITY version "20020918">
|
<!ENTITY version "20020920">
|
||||||
<!ENTITY releasedate "September 18th, 2002">
|
<!ENTITY releasedate "September 20th, 2002">
|
||||||
|
|
||||||
<!ENTITY ftp-root "ftp://ftp.linuxfromscratch.org">
|
<!ENTITY ftp-root "ftp://ftp.linuxfromscratch.org">
|
||||||
<!ENTITY http-root "http://ftp.linuxfromscratch.org">
|
<!ENTITY http-root "http://ftp.linuxfromscratch.org">
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
fully satisfied with any of them. I didn't like the arrangement of
|
fully satisfied with any of them. I didn't like the arrangement of
|
||||||
the bootscripts. I didn't like the way certain programs were configured by
|
the bootscripts. I didn't like the way certain programs were configured by
|
||||||
default. Much more of that sort of thing bothered me. Finally I realized
|
default. Much more of that sort of thing bothered me. Finally I realized
|
||||||
that if I wanted full satisfisfaction from my Linux system I would have to
|
that if I wanted full satisfaction from my Linux system I would have to
|
||||||
build my own system from scratch, using only the source code. I resolved
|
build my own system from scratch, using only the source code. I resolved
|
||||||
not to use pre-compiled packages of any kind, nor CD-ROM or bootdisk that
|
not to use pre-compiled packages of any kind, nor CD-ROM or bootdisk that
|
||||||
would install some basic utilities. I would use my current Linux system to
|
would install some basic utilities. I would use my current Linux system to
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
<title>Organization</title>
|
<title>Organization</title>
|
||||||
<?dbhtml filename="organization.html" dir="preface"?>
|
<?dbhtml filename="organization.html" dir="preface"?>
|
||||||
|
|
||||||
<para>Much of the appendices is integrated into Part II (which enlarges the
|
<para>Much of the appendices are integrated into Part II (which enlarges the
|
||||||
book somewhat). We believe this makes for easier reading. This way, you
|
book somewhat). We believe this makes for easier reading. This way, you
|
||||||
don't have to keep referencing an Appendix while you read Part II. That's
|
don't have to keep referencing an appendix while you read Part II. That's
|
||||||
a real chore, especially if you're reading the TXT version of this book.
|
a real chore, especially if you're reading the txt version of this book.
|
||||||
This book is divided into the following parts:</para>
|
This book is divided into the following parts:</para>
|
||||||
|
|
||||||
&pf-oz-organpart1;
|
&pf-oz-organpart1;
|
||||||
|
@ -4,8 +4,7 @@
|
|||||||
<para>Part I gives general information about the contents of the book
|
<para>Part I gives general information about the contents of the book
|
||||||
(revisions, where to get it, changelog, mailing lists, and other contact
|
(revisions, where to get it, changelog, mailing lists, and other contact
|
||||||
information). It also contains suggested readings which discuss a few
|
information). It also contains suggested readings which discuss a few
|
||||||
important considerations to consider before beginning your LFS
|
important considerations before beginning your LFS system.</para>
|
||||||
system.</para>
|
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
<title>Part II - Installation of the base LFS system</title>
|
<title>Part II - Installation of the base LFS system</title>
|
||||||
|
|
||||||
<para>Part II guides you through the building and installation of an LFS
|
<para>Part II guides you through the building and installation of an LFS
|
||||||
system. The resulting LFS system will be the core foundation with which
|
system. The resulting LFS system will be the core foundation upon which
|
||||||
the rest of your Linux system is built upon. Whatever your system becomes,
|
the rest of your Linux system is built. Whatever your system becomes,
|
||||||
it will be built and supported by the foundation that we build in Part
|
it will be built and supported by the foundation that we build in Part
|
||||||
II.</para>
|
II.</para>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<sect2 id="pre-organ3">
|
<sect2 id="pre-organ3">
|
||||||
<title>Part III - Appendixes</title>
|
<title>Part III - Appendixes</title>
|
||||||
|
|
||||||
<para>Part III contains various Appendices.</para>
|
<para>Part III contains various appendices.</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ of disk space used. Further stripping could bring that down to 5 MB or
|
|||||||
less. Try that with a regular distribution.</para>
|
less. Try that with a regular distribution.</para>
|
||||||
|
|
||||||
<para>We could compare distributed Linux to a hamburger you buy at a
|
<para>We could compare distributed Linux to a hamburger you buy at a
|
||||||
fast-food restaurant, you have no idea what you are eating. LFS on the
|
fast-food restaurant - you have no idea what you are eating. LFS, on the
|
||||||
other hand, doesn't give you a hamburger, but the recipe to make a hamburger.
|
other hand, doesn't give you a hamburger, but the recipe to make a hamburger.
|
||||||
This allows you to review it, to omit unwanted ingredients, and to
|
This allows you to review it, to omit unwanted ingredients, and to
|
||||||
add your own ingredients which enhance the flavor of your burger. When you
|
add your own ingredients which enhance the flavor of your burger. When you
|
||||||
|
Loading…
Reference in New Issue
Block a user