creatingtoolsdir.xml 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
  3. <!ENTITY % general-entities SYSTEM "../general.ent">
  4. %general-entities;
  5. ]>
  6. <sect1 id="ch-tools-creatingtoolsdir">
  7. <title>Creating the $LFS/tools directory</title>
  8. <?dbhtml filename="creatingtoolsdir.html"?>
  9. <!--
  10. <para>All programs compiled in <xref linkend="chapter-temporary-tools"/> will be installed under <filename
  11. class="directory">$LFS/tools</filename> to keep them separate from the
  12. programs compiled in <xref linkend="chapter-building-system"/>. The programs compiled here are only
  13. temporary tools and won't be a part of the final LFS system and by keeping them
  14. in a separate directory, we can later easily throw them away. This also
  15. helps prevent them from ending up in your host's production directories
  16. (easy to do in <xref linkend="chapter-temporary-tools"/>), which could be a very bad thing.</para>
  17. <para>Later on you might wish to search through the binaries of your system to
  18. see what files they make use of or link against. To make this searching easier
  19. you may want to choose a unique name for the directory in which the temporary
  20. tools are stored. Instead of the simple <quote>tools</quote> you could use
  21. something like <quote>tools-for-lfs</quote>. However, you'll need to be careful
  22. to adjust all references to <quote>tools</quote> throughout the book -
  23. including those in any patches, notably the GCC Specs Patch.</para>
  24. <para>Create the required directory by running the following:</para>
  25. -->
  26. <screen><userinput>mkdir $LFS/tools</userinput></screen>
  27. <!--
  28. <para>The next step is to create a <filename>/tools</filename> symlink on
  29. your <emphasis>host</emphasis> system. It will point to the directory we just created on the LFS
  30. partition:</para>
  31. -->
  32. <screen><userinput>ln -s $LFS/tools /</userinput></screen>
  33. <!--
  34. <note><para>The above command is correct. The <command>ln</command> command
  35. has a few syntactic variations, so be sure to check the info page before
  36. reporting what you may think is an error.</para></note>
  37. <para>The created symlink enables us to compile our toolchain so that it always
  38. refers to <filename class="directory">/tools</filename>, meaning that the compiler, assembler
  39. and linker will work both in this chapter (when we are still using some tools
  40. from the host) <emphasis>and</emphasis> in the next (when we are <quote>chrooted</quote> to
  41. the LFS partition).</para>
  42. -->
  43. </sect1>