Author: jciccone
Date: 2006-06-09 18:33:27 -0600 (Fri, 09 Jun 2006)
New Revision: 1759
Modified:
branches/clfs-2.0/BOOK/introduction/common/how.xml
Log:
Updated the how page for sysroot builds
Modified: branches/clfs-2.0/BOOK/introduction/common/how.xml
===================================================================
--- branches/clfs-2.0/BOOK/introduction/common/how.xml 2006-06-10 00:17:08 UTC
(rev 1758)
+++ branches/clfs-2.0/BOOK/introduction/common/how.xml 2006-06-10 00:33:27 UTC
(rev 1759)
@@ -27,9 +27,6 @@
or additional downloads are necessary. For more information about the
LFS LiveCD or to download a copy, visit <ulink url="&livecd-root;"/></para>
- <!-- -->
- <para>THE TEXT BELOW NEEDS TO BE REWRITTEN</para>
-
<para><xref linkend="chapter-partitioning"/> of this book describes how
to create a new Linux native partition and file system, the place
where the new CLFS system will be compiled and installed. <xref
@@ -39,57 +36,24 @@
discusses the setup for an appropriate working environment. Please read
<xref linkend="chapter-final-preps"/> carefully as it explains several
important issues the developer should be aware of before beginning to
- work through <xref linkend="chapter-cross-tools"/> and
- beyond.</para>
+ work through <xref linkend="chapter-cross-tools"/> and beyond.</para>
<para><xref linkend="chapter-cross-tools"/> explains the installation of
cross-compile tools which will be built on the host but be able to compile
programs that run on the target machine. These cross-compile tools will
- be used to create a temporary, minimal system that will be the basis for
- building the final CLFS system. Some of these packages are needed to resolve
- circular dependencies—for example, to compile a compiler, you need a
- compiler.</para>
+ be used to create the final-system.</para>
<para>The process of building cross-compile tools first involves installing
- binutils into ${LFS}/cross-tools, so that the linker can be used with the
building
- of everything else in the temp-system. GCC is then compiled statically and
- installed into ${LFS}/cross-tools, and this cross-compiler is used to build
glibc
- into /tools for the temp-system. The GCC cross-compiler is then rebuilt
- dynamically - this final cross-compiler is what will be used to build the
- rest of the temporary system. When this is done, the CLFS installation
- process will no longer depend on the host distribution, with the exception
- of the running kernel.
- <!-- still needs some work - needs to provide a better technical
-explanation, especially the reasoning for compiling gcc statically then
dynamically... --></para>
+ binutils into ${LFS}/cross-tools, so that we have an asembler and a linker
+ for our target architecture. GCC is then compiled statically and installed
+ into ${LFS}/cross-tools, this cross-compiler is used to build glibc for the
+ final-system. The GCC cross-compiler is then rebuilt dynamically - this final
+ cross-compiler is what will be used to build the final-system.</para>
- <para>The packages in <!-- <xref linkend="chapter-temp-system"/> --> are
then built
- using the cross-compiled tools in ${LFS}/cross-tools, and linked against the
- C library that was installed during the building of the cross-tools.</para>
-
- <para>This effort to isolate the new system from the host distribution
- may seem excessive, but a full technical explanation is provided at the
- beginning of <!-- <xref linkend="chapter-temp-system"/> -->.</para>
-
<para>In <xref linkend="chapter-building-system"/>, the full CLFS system is
- built. Depending on the system you are cross-compiling for, either you will
- boot the minimal temp-system on the target machine, or chroot into it.</para>
+ cross-compiled. The system is built using a sysroot. Sysroot is a parameter
+ passed to binutils and gcc that modifies its default search paths.</para>
- <para>The <command>chroot</command> (change root) program is used to enter
- a virtual environment and start a new shell whose root directory will be set
- to the CLFS partition. This is very similar to rebooting and instructing the
- kernel to mount the CLFS partition as the root partition.
- The major advantage is that <quote>chrooting</quote> allows the builder to
- continue using the host while CLFS is being built. While waiting for package
- compilation to complete, a user can switch to a different virtual console
- (VC) or X desktop and continue using the computer as normal.</para>
-
- <para>Some systems cannot be built by chrooting so they must be
- booted instead. Generally, if you building for a different arch than
- the host system, you must reboot because the kernel will likely not
- support the target machine. Booting involves installing a few
- additional packages that are needed for bootup, installing
- bootscripts, and building a miminal kernel.</para>
-
<para>To finish the installation, the CLFS-Bootscripts are set up in <xref
linkend="chapter-bootscripts"/>, and the kernel and boot loader are set
up in <xref linkend="chapter-bootable"/>. <xref
--
http://linuxfromscratch.org/mailman/listinfo/cross-lfs
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page