Changeset 6bb43b3 for BOOK/cross-tools/common
- Timestamp:
- Feb 21, 2006, 1:26:16 AM (19 years ago)
- Branches:
- clfs-1.2, clfs-2.1, clfs-3.0.0-systemd, clfs-3.0.0-sysvinit, master, systemd, sysvinit
- Children:
- cedcdaa
- Parents:
- e47ec16
- Location:
- BOOK/cross-tools/common
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
BOOK/cross-tools/common/binutils.xml
re47ec16 r6bb43b3 59 59 <term><parameter>--host=${LFS_HOST}</parameter></term> 60 60 <listitem> 61 <para>When used injunctionwith --target, this creates a cross-architecture61 <para>When used with --target, this creates a cross-architecture 62 62 executable that creates files for ${LFS_TARGET} but runs on ${LFS_HOST).</para> 63 63 </listitem> … … 67 67 <term><parameter>--target=${LFS_TARGET}</parameter></term> 68 68 <listitem> 69 <para>When used injunctionwith --host, this creates a cross-architecture69 <para>When used with --host, this creates a cross-architecture 70 70 executable that creates files for ${LFS_TARGET} but runs on ${LFS_HOST).</para> 71 71 </listitem> -
BOOK/cross-tools/common/glibc.xml
re47ec16 r6bb43b3 89 89 <term><parameter>AR="${LFS_TARGET}-ar"</parameter></term> 90 90 <listitem> 91 <para>This forces GLIBC to use the AR utility thatwe made for our target91 <para>This forces GLIBC to use the AR utility we made for our target 92 92 architecture.</para> 93 93 </listitem> -
BOOK/cross-tools/common/variables-multilib.xml
re47ec16 r6bb43b3 14 14 architecture tools</bridgehead> 15 15 16 <para>This method is recommended for all LiveCD based distro's.</para> 16 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 17 href="../common/variables.xml" 18 xpointer="xpointer(//*[@os='a'])"/> 17 19 18 <para>During the building of the cross-compile tools you will need to 19 set a few variables that will be dependent on your particular needs. 20 The first variable will be the triplet of the <envar>HOST</envar> machine. 21 You will need to set the <envar>CHOST</envar> triplet to match your 22 particular needs. To set this information you can issue the following 23 command:</para> 20 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 21 href="../common/variables.xml" 22 xpointer="xpointer(//*[@os='b'])"/> 24 23 25 <screen><userinput>export LFS_HOST="${MACHTYPE}"</userinput></screen> 24 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 25 href="../common/variables.xml" 26 xpointer="xpointer(//*[@os='c'])"/> 26 27 27 <para>Now you will need to set the target triplet for the target 28 architecure. You can do this by running the same command as above, just 29 running it on the target machine. If you can't run the command on the 30 target machine, you can use the table at the bottom of this page. Set 31 the command using the method listed below:</para> 28 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 29 href="../common/variables.xml" 30 xpointer="xpointer(//*[@os='d'])"/> 32 31 33 <screen><userinput>export LFS_TARGET="{target triplet}"</userinput></screen> 32 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 33 href="../common/variables.xml" 34 xpointer="xpointer(//*[@os='e'])"/> 34 35 35 36 <bridgehead renderas="sect4">Configuration # 2 - Creating same 36 37 architecture tools</bridgehead> 37 38 38 <para>You can also create <quote>clean</quote> tools on your current 39 distro. This will ensure that you have all the prerequisites for the 40 LFS build.</para> 39 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 40 href="../common/variables.xml" 41 xpointer="xpointer(//*[@os='f'])"/> 42 43 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 44 href="../common/variables.xml" 45 xpointer="xpointer(//*[@os='g'])"/> 41 46 42 <para>You will need to set your host target triplet a little differently. 43 To set this information you can issue the following commands:</para> 47 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 48 href="../common/variables.xml" 49 xpointer="xpointer(//*[@os='h'])"/> 44 50 45 <screen><userinput>export LFS_HOST="`echo ${MACHTYPE} | sed -e 's/unknown/cross/g' -e 's/-pc-/-cross-/g'`"</userinput></screen> 51 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 52 href="../common/variables.xml" 53 xpointer="xpointer(//*[@os='i'])"/> 46 54 47 <para>Now you will need to set the target triplet for the target, which 48 in this case is very simple. Set the command using the method listed 49 below:</para> 50 51 <screen><userinput>export LFS_TARGET="${MACHTYPE}"</userinput></screen> 55 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 56 href="../common/variables.xml" 57 xpointer="xpointer(//*[@os='j'])"/> 52 58 53 59 <bridgehead renderas="sect4">Sanity Check</bridgehead> 54 60 55 <para>Let's perform a sanity check to prevent build issues. If our LFS_HOST matches our 56 target, we will get some failures during our cross-compile:</para> 61 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 62 href="../common/variables.xml" 63 xpointer="xpointer(//*[@os='k'])"/> 57 64 58 <screen><userinput>if [ "${LFS_HOST}" = "${LFS_TARGET}" ]; then \ 59 echo "Host and Target can't be the same. Use the Other Configuration Method" ; fi</userinput></screen> 60 61 <para>If you received an message, "Host and Target can't be the same." 62 You will need to use the other Configuration Method. This will prevent build 63 issues during the early phases of the build.</para> 65 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 66 href="../common/variables.xml" 67 xpointer="xpointer(//*[@os='l'])"/> 68 69 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 70 href="../common/variables.xml" 71 xpointer="xpointer(//*[@os='m'])"/> 64 72 65 73 <bridgehead renderas="sect4">Copy settings to Environment</bridgehead> 66 74 67 <para>Now we will add these to <filename>~/.bashrc</filename>, just in 68 case you have to exit and restart building later:</para> 75 <para os="n">Now we will add ${LFS_TARGET} to <filename>~/.bashrc</filename>, just in 76 case you have to exit and restart building later: We will add ${LFS_HOST} after 77 it performs another sanity check in the next section</para> 69 78 70 <screen ><userinput>echo export LFS_TARGET=\""${LFS_TARGET}\"" >> ~/.bashrc</userinput></screen>79 <screen os="o"><userinput>echo export LFS_TARGET=\""${LFS_TARGET}\"" >> ~/.bashrc</userinput></screen> 71 80 72 73 <table> 74 <title>List of architectures, target triplets, and recommended book</title> 75 <tgroup cols="2" align="center"> 76 <colspec colname="Processor"/> 77 <colspec colname="Triplet"/> 78 <colspec colname="Book"/> 79 <thead> 80 <row> 81 <entry>Architecture</entry> 82 <entry>Target Triplet</entry> 83 <entry>32 Bit, 64 Bit, 32/64 Bit</entry> 84 </row> 85 </thead> 86 <tbody> 87 <row> 88 <entry>Pentium, K6, 586 Compatibles</entry> 89 <entry>i586-pc-linux-gnu</entry> 90 <entry>32 Bit</entry> 91 </row> 92 <row> 93 <entry>Pentium II, Pentium III, Pentium 4</entry> 94 <entry>i686-pc-linux-gnu</entry> 95 <entry>32 Bit</entry> 96 </row> 97 <row> 98 <entry>Athlon, Duron</entry> 99 <entry>i686-pc-linux-gnu</entry> 100 <entry>32 Bit</entry> 101 </row> 102 <row> 103 <entry>Athlon64</entry> 104 <entry>x86_64-pc-linux-gnu</entry> 105 <entry>32/64 Bit</entry> 106 </row> 107 <row> 108 <entry>PowerPC</entry> 109 <entry>powerpc-unknown-linux-gnu</entry> 110 <entry>32 Bit</entry> 111 </row> 112 <row> 113 <entry>PowerPC64</entry> 114 <entry>ppc64-unknown-linux-gnu</entry> 115 <entry>64 Bit</entry> 116 </row> 117 <row> 118 <entry>MIPS</entry> 119 <entry>mips-unknown-linux-gnu</entry> 120 <entry>32 Bit</entry> 121 </row> 122 <row> 123 <entry>MIPS Little Endian</entry> 124 <entry>mipsel-unknown-linux-gnu</entry> 125 <entry>32 Bit</entry> 126 </row> 127 <row> 128 <entry>MIPS 64</entry> 129 <entry>mips64-unknown-linux-gnu</entry> 130 <entry>64 Bit</entry> 131 </row> 132 <row> 133 <entry>MIPS 64 Little Endian</entry> 134 <entry>mips64el-unknown-linux-gnu</entry> 135 <entry>64 Bit</entry> 136 </row> 137 <row> 138 <entry>Cypress</entry> 139 <entry>sparc-unknown-linux-gnu</entry> 140 <entry>32 Bit</entry> 141 </row> 142 <row> 143 <entry>Supersparc and Hypersparc</entry> 144 <entry>sparc-unknown-linux-gnu</entry> 145 <entry>32 Bit</entry> 146 </row> 147 <row> 148 <entry>Ultrasparc</entry> 149 <entry>sparc64-unknown-linux-gnu</entry> 150 <entry>32/64 Bit</entry> 151 </row> 152 <row> 153 <entry>Alpha</entry> 154 <entry>alpha-unknown-linux-gnu</entry> 155 <entry>64 Bit</entry> 156 </row> 157 </tbody> 158 </tgroup> 159 </table> 81 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 82 href="../common/variables.xml" 83 xpointer="xpointer(//*[@os='p'])"/> 160 84 161 85 </sect1> 86 -
BOOK/cross-tools/common/variables.xml
re47ec16 r6bb43b3 14 14 architecture tools</bridgehead> 15 15 16 <para >This method is recommended for all LiveCD based distro's.</para>16 <para os="a">This method is recommended for all LiveCD based distro's.</para> 17 17 18 <para >During the building of the cross-compile tools you will need to18 <para os="b">During the building of the cross-compile tools you will need to 19 19 set a few variables that will be dependent on your particular needs. 20 20 The first variable will be the triplet of the <envar>HOST</envar> machine. … … 23 23 command:</para> 24 24 25 <screen ><userinput>export LFS_HOST="${MACHTYPE}"</userinput></screen>25 <screen os="c"><userinput>export LFS_HOST="${MACHTYPE}"</userinput></screen> 26 26 27 <para >Now you will need to set the target triplet for the target28 architec ure. You can do this by running the same command as above, just27 <para os="d">Now you will need to set the target triplet for the target 28 architecture. You can do this by running the same command as above, just 29 29 running it on the target machine. If you can't run the command on the 30 30 target machine, you can use the table at the bottom of this page. Set 31 31 the command using the method listed below:</para> 32 32 33 <screen ><userinput>export LFS_TARGET="{target triplet}"</userinput></screen>33 <screen os="e"><userinput>export LFS_TARGET="{target triplet}"</userinput></screen> 34 34 35 35 <bridgehead renderas="sect4">Configuration # 2 - Creating same 36 36 architecture tools</bridgehead> 37 37 38 <para >You can also create <quote>clean</quote> tools on your current38 <para os="f">You can also create <quote>clean</quote> tools on your current 39 39 distro. This will ensure that you have all the prerequisites for the 40 40 LFS build.</para> 41 41 42 <para >You will need to set your host target triplet a little differently.42 <para os="g">You will need to set your host target triplet a little differently. 43 43 To set this information you can issue the following commands:</para> 44 44 45 <screen ><userinput>export LFS_HOST="`echo ${MACHTYPE} | sed -e 's/unknown/cross/g' -e 's/-pc-/-cross-/g'`"</userinput></screen>45 <screen os="h"><userinput>export LFS_HOST="`echo ${MACHTYPE} | sed -e 's/unknown/cross/g' -e 's/-pc-/-cross-/g'`"</userinput></screen> 46 46 47 <para >Now you will need to set the target triplet for the target, which47 <para os="i">Now you will need to set the target triplet for the target, which 48 48 in this case is very simple. Set the command using the method listed 49 49 below:</para> 50 50 51 <screen ><userinput>export LFS_TARGET="${MACHTYPE}"</userinput></screen>51 <screen os="j"><userinput>export LFS_TARGET="${MACHTYPE}"</userinput></screen> 52 52 53 53 <bridgehead renderas="sect4">Sanity Check</bridgehead> 54 54 55 <para >Let's perform a sanity check to prevent build issues. If our LFS_HOST matches our55 <para os="k">Let's perform a sanity check to prevent build issues. If our LFS_HOST matches our 56 56 target, we will get some failures during our cross-compile:</para> 57 57 58 <screen ><userinput>if [ "${LFS_HOST}" = "${LFS_TARGET}" ]; then \58 <screen os="l"><userinput>if [ "${LFS_HOST}" = "${LFS_TARGET}" ]; then \ 59 59 echo "Host and Target can't be the same." ; fi</userinput></screen> 60 60 61 <para >If you received an message, "Host and Target can't be the same."61 <para os="m">If you received an message, "Host and Target can't be the same." 62 62 You will need to use the other Configuration Method. This will prevent build 63 63 issues during the early phases of the build.</para> … … 65 65 <bridgehead renderas="sect4">Copy settings to Environment</bridgehead> 66 66 67 <para >Now we will add these to <filename>~/.bashrc</filename>, just in67 <para os="n">Now we will add these to <filename>~/.bashrc</filename>, just in 68 68 case you have to exit and restart building later:</para> 69 69 70 <screen ><userinput>echo export LFS_HOST=\""${LFS_HOST}\"" >> ~/.bashrc70 <screen os="o"><userinput>echo export LFS_HOST=\""${LFS_HOST}\"" >> ~/.bashrc 71 71 echo export LFS_TARGET=\""${LFS_TARGET}\"" >> ~/.bashrc</userinput></screen> 72 72 73 <table >73 <table os="p"> 74 74 <title>List of architectures, target triplets, and recommended book</title> 75 75 <tgroup cols="2" align="center">
Note:
See TracChangeset
for help on using the changeset viewer.