source: BOOK/cross-tools/x86/variables.xml@ 8e5183d

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 8e5183d was 44426cf, checked in by Joe Ciccone <jciccone@…>, 17 years ago

Updated to Glibc 2.6. This includes adding a sed to Coreutils and Gzip to rename their internal implementations of futimens which are incompatible with the implementation provided by Glibc. Added a target tripplet based optimization to glibc on x86 and 32bit build on x86_64 so that glibc will build properly now that i386 is no longer supported. Also added a note to the build variables page the i386-pc-linux-gnu is not supported by glibc.

  • Property mode set to 100644
File size: 2.8 KB
RevLine 
[8672967]1<?xml version="1.0" encoding="ISO-8859-1"?>
[aa18ac0]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[8672967]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">Setting Host and Target</bridgehead>
14
15 <para os="a">During the building of the cross-compile tools you will need to
16 set a few variables that will be dependent on your particular needs.
[7030b60]17 The first variable will be the triplet of the host machine, which will be
18 put into the <envar>CLFS_HOST</envar> variable. To account for the
19 possibility that the host and target are the same arch, as cross-compiling
20 won't work when host and target are the same, part of the triplet needs to
21 be changed slightly to add "cross". Set <envar>CLFS_HOST</envar> using the
22 following command:</para>
[8672967]23
[bc2e3fa]24<screen os="b"><userinput>export CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")"</userinput></screen>
[8672967]25
[7030b60]26 <para os="c">Now you will need to set the triplet for the target
27 architecture. Set the target variable using the following command:</para>
[8672967]28
[7030b60]29<screen os="d"><userinput>export CLFS_TARGET="[target triplet]"</userinput></screen>
[8672967]30
[7030b60]31 <para os="t1">Replace [target triplet] with the appropriate machine triplet
32 using the table at the bottom of the page.</para>
[8672967]33
[7030b60]34 <bridgehead renderas="sect4">Copy settings to the Environment</bridgehead>
35
36 <para os="e">Now add these to <filename>~/.bashrc</filename>, just in
[8672967]37 case you have to exit and restart building later:</para>
38
[07114c98]39<screen os="f"><userinput>echo export CLFS_HOST=\""${CLFS_HOST}\"" &gt;&gt; ~/.bashrc
40echo export CLFS_TARGET=\""${CLFS_TARGET}\"" &gt;&gt; ~/.bashrc</userinput></screen>
[8672967]41
42 <table os="g">
43 <title>Processor Type and Target Triplets</title>
44 <tgroup cols="2" align="center">
45 <colspec colname="Processor"/>
46 <colspec colname="Triplet"/>
47 <thead>
48 <row>
49 <entry>Processor</entry>
50 <entry>Target Triplet</entry>
51 </row>
52 </thead>
53 <tbody>
[44426cf]54 <row>
55 <entry>386 Compatibles</entry>
56 <entry>Not Supported By Glibc</entry>
57 </row>
[8672967]58 <row>
59 <entry>486 Compatibles</entry>
60 <entry>i486-pc-linux-gnu</entry>
61 </row>
62 <row>
63 <entry>Pentium, K6, 586 Compatibles</entry>
64 <entry>i586-pc-linux-gnu</entry>
65 </row>
66 <row>
67 <entry>Pentium II, Pentium III, Pentium 4</entry>
68 <entry>i686-pc-linux-gnu</entry>
69 </row>
70 <row>
71 <entry>Athlon, Duron</entry>
72 <entry>i686-pc-linux-gnu</entry>
73 </row>
74 </tbody>
75 </tgroup>
76 </table>
77
78</sect1>
Note: See TracBrowser for help on using the repository browser.