| 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
 | 
|---|
| 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
 | 
|---|
| 3 |   "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
 | 
|---|
| 4 |   <!ENTITY % general-entities SYSTEM "../general.ent">
 | 
|---|
| 5 |   %general-entities;
 | 
|---|
| 6 | ]>
 | 
|---|
| 7 | 
 | 
|---|
| 8 | <sect1 id="ch-final-preps-creatingcrossdir">
 | 
|---|
| 9 |   <?dbhtml filename="creatingcrossdir.html"?>
 | 
|---|
| 10 | 
 | 
|---|
| 11 |   <title>Creating the $HOME/cross-tools Directory</title>
 | 
|---|
| 12 | 
 | 
|---|
| 13 |   <para>All programs compiled in <xref linkend="chapter-cross-tools"/> will
 | 
|---|
| 14 |   be installed under <filename class="directory">$HOME/cross-tools</filename>
 | 
|---|
| 15 |   to keep them separate from the host programs. The programs compiled here are
 | 
|---|
| 16 |   cross tools and will not be a part of the final LFS system. By keeping these
 | 
|---|
| 17 |   programs in a separate directory, they can easily be discarded later after
 | 
|---|
| 18 |   their use.</para>
 | 
|---|
| 19 | 
 | 
|---|
| 20 |   <para>Create the required directory by running the following as
 | 
|---|
| 21 |   the <systemitem class="username">lfs</systemitem> user:</para>
 | 
|---|
| 22 | 
 | 
|---|
| 23 | <screen><userinput>install -d $HOME/cross-tools</userinput></screen>
 | 
|---|
| 24 | 
 | 
|---|
| 25 |   <para>The next step is to create a <filename
 | 
|---|
| 26 |   class="symlink">/cross-tools</filename> symlink on the host system.
 | 
|---|
| 27 |   This will point to the newly-created directory in your home directory.
 | 
|---|
| 28 |   Since normal users will not have permissions to write to the root tree,
 | 
|---|
| 29 |   we need to exit the <command>su</command> and run the symlink command as
 | 
|---|
| 30 |   <systemitem class="username">root</systemitem>:</para>
 | 
|---|
| 31 | 
 | 
|---|
| 32 | <screen><userinput>exit
 | 
|---|
| 33 | LFSHOME=`su - lfs -c 'echo $HOME'`
 | 
|---|
| 34 | ln -s $LFSHOME/cross-tools /
 | 
|---|
| 35 | unset LFSHOME
 | 
|---|
| 36 | su - lfs</userinput></screen>
 | 
|---|
| 37 | 
 | 
|---|
| 38 |   <para>TO BE REWRITTEN - The created symlink enables the toolchain to be
 | 
|---|
| 39 |   compiled so that
 | 
|---|
| 40 |   it always refers to <filename class="directory">/cross-tools</filename>,
 | 
|---|
| 41 |   meaning that the compiler, assembler, and linker will work both in
 | 
|---|
| 42 |   this chapter and this host architecture and in the next (when we are
 | 
|---|
| 43 |   <quote>chrooted</quote> to the LFS partition).</para>
 | 
|---|
| 44 | 
 | 
|---|
| 45 | </sect1>
 | 
|---|