packaging: support aarch64 build
[platform/upstream/gcc48.git] / INSTALL / finalinstall.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <!-- Copyright (C) 1988-2013 Free Software Foundation, Inc.
4
5 Permission is granted to copy, distribute and/or modify this document
6 under the terms of the GNU Free Documentation License, Version 1.3 or
7 any later version published by the Free Software Foundation; with no
8 Invariant Sections, the Front-Cover texts being (a) (see below), and
9 with the Back-Cover Texts being (b) (see below).  A copy of the
10 license is included in the section entitled "GNU
11 Free Documentation License".
12
13 (a) The FSF's Front-Cover Text is:
14
15 A GNU Manual
16
17 (b) The FSF's Back-Cover Text is:
18
19 You have freedom to copy and modify this GNU Manual, like GNU
20      software.  Copies published by the Free Software Foundation raise
21      funds for GNU development. -->
22 <!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
23 <head>
24 <title>Installing GCC</title>
25
26 <meta name="description" content="Installing GCC">
27 <meta name="keywords" content="Installing GCC">
28 <meta name="resource-type" content="document">
29 <meta name="distribution" content="global">
30 <meta name="Generator" content="makeinfo">
31 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
32 <style type="text/css">
33 <!--
34 a.summary-letter {text-decoration: none}
35 blockquote.smallquotation {font-size: smaller}
36 div.display {margin-left: 3.2em}
37 div.example {margin-left: 3.2em}
38 div.indentedblock {margin-left: 3.2em}
39 div.lisp {margin-left: 3.2em}
40 div.smalldisplay {margin-left: 3.2em}
41 div.smallexample {margin-left: 3.2em}
42 div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
43 div.smalllisp {margin-left: 3.2em}
44 kbd {font-style:oblique}
45 pre.display {font-family: inherit}
46 pre.format {font-family: inherit}
47 pre.menu-comment {font-family: serif}
48 pre.menu-preformatted {font-family: serif}
49 pre.smalldisplay {font-family: inherit; font-size: smaller}
50 pre.smallexample {font-size: smaller}
51 pre.smallformat {font-family: inherit; font-size: smaller}
52 pre.smalllisp {font-size: smaller}
53 span.nocodebreak {white-space:nowrap}
54 span.nolinebreak {white-space:nowrap}
55 span.roman {font-family:serif; font-weight:normal}
56 span.sansserif {font-family:sans-serif; font-weight:normal}
57 ul.no-bullet {list-style: none}
58 -->
59 </style>
60
61
62 </head>
63
64 <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
65 <h1 class="settitle" align="center">Installing GCC</h1>
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89 <p>Now that GCC has been built (and optionally tested), you can install it with
90 </p><div class="smallexample">
91 <pre class="smallexample">cd <var>objdir</var> &amp;&amp; make install
92 </pre></div>
93
94 <p>We strongly recommend to install into a target directory where there is
95 no previous version of GCC present.  Also, the GNAT runtime should not
96 be stripped, as this would break certain features of the debugger that
97 depend on this debugging information (catching Ada exceptions for
98 instance).
99 </p>
100 <p>That step completes the installation of GCC; user level binaries can
101 be found in <samp><var>prefix</var>/bin</samp> where <var>prefix</var> is the value
102 you specified with the <samp>--prefix</samp> to configure (or
103 <samp>/usr/local</samp> by default).  (If you specified <samp>--bindir</samp>,
104 that directory will be used instead; otherwise, if you specified
105 <samp>--exec-prefix</samp>, <samp><var>exec-prefix</var>/bin</samp> will be used.)
106 Headers for the C++ and Java libraries are installed in
107 <samp><var>prefix</var>/include</samp>; libraries in <samp><var>libdir</var></samp>
108 (normally <samp><var>prefix</var>/lib</samp>); internal parts of the compiler in
109 <samp><var>libdir</var>/gcc</samp> and <samp><var>libexecdir</var>/gcc</samp>; documentation
110 in info format in <samp><var>infodir</var></samp> (normally
111 <samp><var>prefix</var>/info</samp>).
112 </p>
113 <p>When installing cross-compilers, GCC&rsquo;s executables
114 are not only installed into <samp><var>bindir</var></samp>, that
115 is, <samp><var>exec-prefix</var>/bin</samp>, but additionally into
116 <samp><var>exec-prefix</var>/<var>target-alias</var>/bin</samp>, if that directory
117 exists.  Typically, such <em>tooldirs</em> hold target-specific
118 binutils, including assembler and linker.
119 </p>
120 <p>Installation into a temporary staging area or into a <code>chroot</code>
121 jail can be achieved with the command
122 </p>
123 <div class="smallexample">
124 <pre class="smallexample">make DESTDIR=<var>path-to-rootdir</var> install
125 </pre></div>
126
127 <p>where <var>path-to-rootdir</var> is the absolute path of
128 a directory relative to which all installation paths will be
129 interpreted.  Note that the directory specified by <code>DESTDIR</code>
130 need not exist yet; it will be created if necessary.
131 </p>
132 <p>There is a subtle point with tooldirs and <code>DESTDIR</code>:
133 If you relocate a cross-compiler installation with
134 e.g. &lsquo;<samp>DESTDIR=<var>rootdir</var></samp>&rsquo;, then the directory
135 <samp><var>rootdir</var>/<var>exec-prefix</var>/<var>target-alias</var>/bin</samp> will
136 be filled with duplicated GCC executables only if it already exists,
137 it will not be created otherwise.  This is regarded as a feature,
138 not as a bug, because it gives slightly more control to the packagers
139 using the <code>DESTDIR</code> feature.
140 </p>
141 <p>You can install stripped programs and libraries with
142 </p>
143 <div class="smallexample">
144 <pre class="smallexample">make install-strip
145 </pre></div>
146
147 <p>If you are bootstrapping a released version of GCC then please
148 quickly review the build status page for your release, available from
149 <a href="http://gcc.gnu.org/buildstat.html">http://gcc.gnu.org/buildstat.html</a>.
150 If your system is not listed for the version of GCC that you built,
151 send a note to
152 <a href="mailto:gcc@gcc.gnu.org">gcc@gcc.gnu.org</a> indicating
153 that you successfully built and installed GCC.
154 Include the following information:
155 </p>
156 <ul>
157 <li> Output from running <samp><var>srcdir</var>/config.guess</samp>.  Do not send
158 that file itself, just the one-line output from running it.
159
160 </li><li> The output of &lsquo;<samp>gcc -v</samp>&rsquo; for your newly installed <code>gcc</code>.
161 This tells us which version of GCC you built and the options you passed to
162 configure.
163
164 </li><li> Whether you enabled all languages or a subset of them.  If you used a
165 full distribution then this information is part of the configure
166 options in the output of &lsquo;<samp>gcc -v</samp>&rsquo;, but if you downloaded the
167 &ldquo;core&rdquo; compiler plus additional front ends then it isn&rsquo;t apparent
168 which ones you built unless you tell us about it.
169
170 </li><li> If the build was for GNU/Linux, also include:
171 <ul>
172 <li> The distribution name and version (e.g., Red Hat 7.1 or Debian 2.2.3);
173 this information should be available from <samp>/etc/issue</samp>.
174
175 </li><li> The version of the Linux kernel, available from &lsquo;<samp>uname --version</samp>&rsquo;
176 or &lsquo;<samp>uname -a</samp>&rsquo;.
177
178 </li><li> The version of glibc you used; for RPM-based systems like Red Hat,
179 Mandrake, and SuSE type &lsquo;<samp>rpm -q glibc</samp>&rsquo; to get the glibc version,
180 and on systems like Debian and Progeny use &lsquo;<samp>dpkg -l libc6</samp>&rsquo;.
181 </li></ul>
182 <p>For other systems, you can include similar information if you think it is
183 relevant.
184 </p>
185 </li><li> Any other information that you think would be useful to people building
186 GCC on the same configuration.  The new entry in the build status list
187 will include a link to the archived copy of your message.
188 </li></ul>
189
190 <p>We&rsquo;d also like to know if the
191 <a href="specific.html">host/target specific installation notes</a>
192 didn&rsquo;t include your host/target information or if that information is
193 incomplete or out of date.  Send a note to
194 <a href="mailto:gcc@gcc.gnu.org">gcc@gcc.gnu.org</a> detailing how the information should be changed.
195 </p>
196 <p>If you find a bug, please report it following the
197 <a href="../bugs/">bug reporting guidelines</a>.
198 </p>
199 <p>If you want to print the GCC manuals, do &lsquo;<samp>cd <var>objdir</var>; make
200 dvi</samp>&rsquo;.  You will need to have <code>texi2dvi</code> (version at least 4.7)
201 and TeX installed.  This creates a number of <samp>.dvi</samp> files in
202 subdirectories of <samp><var>objdir</var></samp>; these may be converted for
203 printing with programs such as <code>dvips</code>.  Alternately, by using
204 &lsquo;<samp>make pdf</samp>&rsquo; in place of &lsquo;<samp>make dvi</samp>&rsquo;, you can create documentation
205 in the form of <samp>.pdf</samp> files; this requires <code>texi2pdf</code>, which
206 is included with Texinfo version 4.8 and later.  You can also
207 <a href="http://shop.fsf.org/">buy printed manuals from the
208 Free Software Foundation</a>, though such manuals may not be for the most
209 recent version of GCC.
210 </p>
211 <p>If you would like to generate online HTML documentation, do &lsquo;<samp>cd
212 <var>objdir</var>; make html</samp>&rsquo; and HTML will be generated for the gcc manuals in
213 <samp><var>objdir</var>/gcc/HTML</samp>.
214 </p>
215 <hr />
216 <p><p><a href="./index.html">Return to the GCC Installation page</a>
217 </p>
218
219
220
221
222
223
224
225
226 </body>
227 </html>