Mercurial > hg > CbC > CbC_gcc
comparison gcc/doc/install-old.texi @ 0:a06113de4d67
first commit
author | kent <kent@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 17 Jul 2009 14:47:48 +0900 |
parents | |
children | 04ced10e8804 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:a06113de4d67 |
---|---|
1 @c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. | |
2 @c This is part of the GCC manual. | |
3 @c For copying conditions, see the file install.texi. | |
4 | |
5 @ifnothtml | |
6 @comment node-name, next, previous, up | |
7 @node Old, GNU Free Documentation License, Specific, Top | |
8 @end ifnothtml | |
9 @html | |
10 <h1 align="center">Old installation documentation</h1> | |
11 @end html | |
12 @ifnothtml | |
13 @chapter Old installation documentation | |
14 @end ifnothtml | |
15 | |
16 Note most of this information is out of date and superseded by the | |
17 previous chapters of this manual. It is provided for historical | |
18 reference only, because of a lack of volunteers to merge it into the | |
19 main manual. | |
20 | |
21 @ifnothtml | |
22 @menu | |
23 * Configurations:: Configurations Supported by GCC. | |
24 @end menu | |
25 @end ifnothtml | |
26 | |
27 Here is the procedure for installing GCC on a GNU or Unix system. | |
28 | |
29 @enumerate | |
30 @item | |
31 If you have chosen a configuration for GCC which requires other GNU | |
32 tools (such as GAS or the GNU linker) instead of the standard system | |
33 tools, install the required tools in the build directory under the names | |
34 @file{as}, @file{ld} or whatever is appropriate. | |
35 | |
36 Alternatively, you can do subsequent compilation using a value of the | |
37 @code{PATH} environment variable such that the necessary GNU tools come | |
38 before the standard system tools. | |
39 | |
40 @item | |
41 Specify the host, build and target machine configurations. You do this | |
42 when you run the @file{configure} script. | |
43 | |
44 The @dfn{build} machine is the system which you are using, the | |
45 @dfn{host} machine is the system where you want to run the resulting | |
46 compiler (normally the build machine), and the @dfn{target} machine is | |
47 the system for which you want the compiler to generate code. | |
48 | |
49 If you are building a compiler to produce code for the machine it runs | |
50 on (a native compiler), you normally do not need to specify any operands | |
51 to @file{configure}; it will try to guess the type of machine you are on | |
52 and use that as the build, host and target machines. So you don't need | |
53 to specify a configuration when building a native compiler unless | |
54 @file{configure} cannot figure out what your configuration is or guesses | |
55 wrong. | |
56 | |
57 In those cases, specify the build machine's @dfn{configuration name} | |
58 with the @option{--host} option; the host and target will default to be | |
59 the same as the host machine. | |
60 | |
61 Here is an example: | |
62 | |
63 @smallexample | |
64 ./configure --host=sparc-sun-sunos4.1 | |
65 @end smallexample | |
66 | |
67 A configuration name may be canonical or it may be more or less | |
68 abbreviated. | |
69 | |
70 A canonical configuration name has three parts, separated by dashes. | |
71 It looks like this: @samp{@var{cpu}-@var{company}-@var{system}}. | |
72 (The three parts may themselves contain dashes; @file{configure} | |
73 can figure out which dashes serve which purpose.) For example, | |
74 @samp{m68k-sun-sunos4.1} specifies a Sun 3. | |
75 | |
76 You can also replace parts of the configuration by nicknames or aliases. | |
77 For example, @samp{sun3} stands for @samp{m68k-sun}, so | |
78 @samp{sun3-sunos4.1} is another way to specify a Sun 3. | |
79 | |
80 You can specify a version number after any of the system types, and some | |
81 of the CPU types. In most cases, the version is irrelevant, and will be | |
82 ignored. So you might as well specify the version if you know it. | |
83 | |
84 See @ref{Configurations}, for a list of supported configuration names and | |
85 notes on many of the configurations. You should check the notes in that | |
86 section before proceeding any further with the installation of GCC@. | |
87 | |
88 @end enumerate | |
89 | |
90 @ifnothtml | |
91 @node Configurations, , , Old | |
92 @section Configurations Supported by GCC | |
93 @end ifnothtml | |
94 @html | |
95 <h2>@anchor{Configurations}Configurations Supported by GCC</h2> | |
96 @end html | |
97 @cindex configurations supported by GCC | |
98 | |
99 Here are the possible CPU types: | |
100 | |
101 @quotation | |
102 @c gmicro, fx80, spur and tahoe omitted since they don't work. | |
103 1750a, a29k, alpha, arm, avr, c@var{n}, clipper, dsp16xx, elxsi, fr30, h8300, | |
104 hppa1.0, hppa1.1, i370, i386, i486, i586, i686, i786, i860, i960, ip2k, m32r, | |
105 m68000, m68k, m6811, m6812, m88k, mcore, mips, mipsel, mips64, mips64el, | |
106 mn10200, mn10300, ns32k, pdp11, powerpc, powerpcle, romp, rs6000, sh, sparc, | |
107 sparclite, sparc64, v850, vax, we32k. | |
108 @end quotation | |
109 | |
110 Here are the recognized company names. As you can see, customary | |
111 abbreviations are used rather than the longer official names. | |
112 | |
113 @c What should be done about merlin, tek*, dolphin? | |
114 @quotation | |
115 acorn, alliant, altos, apollo, apple, att, bull, | |
116 cbm, convergent, convex, crds, dec, dg, dolphin, | |
117 elxsi, encore, harris, hitachi, hp, ibm, intergraph, isi, | |
118 mips, motorola, ncr, next, ns, omron, plexus, | |
119 sequent, sgi, sony, sun, tti, unicom, wrs. | |
120 @end quotation | |
121 | |
122 The company name is meaningful only to disambiguate when the rest of | |
123 the information supplied is insufficient. You can omit it, writing | |
124 just @samp{@var{cpu}-@var{system}}, if it is not needed. For example, | |
125 @samp{vax-ultrix4.2} is equivalent to @samp{vax-dec-ultrix4.2}. | |
126 | |
127 Here is a list of system types: | |
128 | |
129 @quotation | |
130 386bsd, aix, acis, amigaos, aos, aout, aux, bosx, bsd, clix, coff, ctix, cxux, | |
131 dgux, dynix, ebmon, ecoff, elf, esix, freebsd, hms, genix, gnu, linux, | |
132 linux-gnu, hiux, hpux, iris, irix, isc, luna, lynxos, mach, minix, msdos, mvs, | |
133 netbsd, newsos, nindy, ns, osf, osfrose, ptx, riscix, riscos, rtu, sco, sim, | |
134 solaris, sunos, sym, sysv, udi, ultrix, unicos, uniplus, unos, vms, vsta, | |
135 vxworks, winnt, xenix. | |
136 @end quotation | |
137 | |
138 @noindent | |
139 You can omit the system type; then @file{configure} guesses the | |
140 operating system from the CPU and company. | |
141 | |
142 You can add a version number to the system type; this may or may not | |
143 make a difference. For example, you can write @samp{bsd4.3} or | |
144 @samp{bsd4.4} to distinguish versions of BSD@. In practice, the version | |
145 number is most needed for @samp{sysv3} and @samp{sysv4}, which are often | |
146 treated differently. | |
147 | |
148 @samp{linux-gnu} is the canonical name for the GNU/Linux target; however | |
149 GCC will also accept @samp{linux}. The version of the kernel in use is | |
150 not relevant on these systems. A suffix such as @samp{libc1} or @samp{aout} | |
151 distinguishes major versions of the C library; all of the suffixed versions | |
152 are obsolete. | |
153 | |
154 If you specify an impossible combination such as @samp{i860-dg-vms}, | |
155 then you may get an error message from @file{configure}, or it may | |
156 ignore part of the information and do the best it can with the rest. | |
157 @file{configure} always prints the canonical name for the alternative | |
158 that it used. GCC does not support all possible alternatives. | |
159 | |
160 Often a particular model of machine has a name. Many machine names are | |
161 recognized as aliases for CPU/company combinations. Thus, the machine | |
162 name @samp{sun3}, mentioned above, is an alias for @samp{m68k-sun}. | |
163 Sometimes we accept a company name as a machine name, when the name is | |
164 popularly used for a particular machine. Here is a table of the known | |
165 machine names: | |
166 | |
167 @quotation | |
168 3300, 3b1, 3b@var{n}, 7300, altos3068, altos, | |
169 apollo68, att-7300, balance, | |
170 convex-c@var{n}, crds, decstation-3100, | |
171 decstation, delta, encore, | |
172 fx2800, gmicro, hp7@var{nn}, hp8@var{nn}, | |
173 hp9k2@var{nn}, hp9k3@var{nn}, hp9k7@var{nn}, | |
174 hp9k8@var{nn}, iris4d, iris, isi68, | |
175 m3230, magnum, merlin, miniframe, | |
176 mmax, news-3600, news800, news, next, | |
177 pbd, pc532, pmax, powerpc, powerpcle, ps2, risc-news, | |
178 rtpc, sun2, sun386i, sun386, sun3, | |
179 sun4, symmetry, tower-32, tower. | |
180 @end quotation | |
181 | |
182 @noindent | |
183 Remember that a machine name specifies both the cpu type and the company | |
184 name. | |
185 If you want to install your own homemade configuration files, you can | |
186 use @samp{local} as the company name to access them. If you use | |
187 configuration @samp{@var{cpu}-local}, the configuration name | |
188 without the cpu prefix | |
189 is used to form the configuration file names. | |
190 | |
191 Thus, if you specify @samp{m68k-local}, configuration uses | |
192 files @file{m68k.md}, @file{local.h}, @file{m68k.c}, | |
193 @file{xm-local.h}, @file{t-local}, and @file{x-local}, all in the | |
194 directory @file{config/m68k}. |