source: BOOK/cross-tools/common/variables.xml@ 4e3e507

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 4e3e507 was 6bb43b3, checked in by Jim Gifford <clfs@…>, 19 years ago

r788@server (orig r786): jim | 2005-12-01 12:07:35 -0800

r851@server: jim | 2005-12-01 12:07:08 -0800
Text updates from G. Moko. Thank You


  • Property mode set to 100644
File size: 5.7 KB
Line 
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-cross-tools-variables">
9 <?dbhtml filename="variables.html"?>
10
11 <title>Build Variables</title>
12
13 <bridgehead renderas="sect4">Configuration # 1 - Creating different
14 architecture tools</bridgehead>
15
16 <para os="a">This method is recommended for all LiveCD based distro's.</para>
17
18 <para os="b">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>
24
25<screen os="c"><userinput>export LFS_HOST="${MACHTYPE}"</userinput></screen>
26
27 <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 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>
32
33<screen os="e"><userinput>export LFS_TARGET="{target triplet}"</userinput></screen>
34
35 <bridgehead renderas="sect4">Configuration # 2 - Creating same
36 architecture tools</bridgehead>
37
38 <para os="f">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>
41
42 <para os="g">You will need to set your host target triplet a little differently.
43 To set this information you can issue the following commands:</para>
44
45<screen os="h"><userinput>export LFS_HOST="`echo ${MACHTYPE} | sed -e 's/unknown/cross/g' -e 's/-pc-/-cross-/g'`"</userinput></screen>
46
47 <para os="i">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 os="j"><userinput>export LFS_TARGET="${MACHTYPE}"</userinput></screen>
52
53 <bridgehead renderas="sect4">Sanity Check</bridgehead>
54
55 <para os="k">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>
57
58<screen os="l"><userinput>if [ "${LFS_HOST}" = "${LFS_TARGET}" ]; then \
59 echo "Host and Target can't be the same." ; fi</userinput></screen>
60
61 <para os="m">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>
64
65 <bridgehead renderas="sect4">Copy settings to Environment</bridgehead>
66
67 <para os="n">Now we will add these to <filename>~/.bashrc</filename>, just in
68 case you have to exit and restart building later:</para>
69
70<screen os="o"><userinput>echo export LFS_HOST=\""${LFS_HOST}\"" &gt;&gt; ~/.bashrc
71echo export LFS_TARGET=\""${LFS_TARGET}\"" &gt;&gt; ~/.bashrc</userinput></screen>
72
73 <table os="p">
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>
160
161</sect1>
Note: See TracBrowser for help on using the repository browser.