diff options
author | Marc Espie <espie@cvs.openbsd.org> | 1999-08-23 20:32:32 +0000 |
---|---|---|
committer | Marc Espie <espie@cvs.openbsd.org> | 1999-08-23 20:32:32 +0000 |
commit | ef233545e6c3dcf885a8b3178a859a23604b359c (patch) | |
tree | 8f4f503c82a377012f9429ed7e24abfbd6aabb98 /gnu/egcs/install/build.html | |
parent | 20915043a05410a0247b150f77f71c94c43ce2ae (diff) |
Update to gcc 2.95.1, official release.
Diffstat (limited to 'gnu/egcs/install/build.html')
-rw-r--r-- | gnu/egcs/install/build.html | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/gnu/egcs/install/build.html b/gnu/egcs/install/build.html new file mode 100644 index 00000000000..55123828006 --- /dev/null +++ b/gnu/egcs/install/build.html @@ -0,0 +1,99 @@ +<html> +<head> +<title>Installing GCC: Building</title> +</head> +<body> +<h1 align="center">Installing GCC: Building</h1> + +<p>Now that GCC is configured, you are ready to build the compiler and +runtime libraries. + +<p>We <b>highly</b> recommend that GCC be built using GNU make; other +versions may work, then again they might not. To be safe build with GNU make. + +<h2>Building a native compiler</h2> + +<p>For a native build issue the command `<code>make bootstrap</code>'. This +will build the entire GCC system, which includes the following steps: + +<ul> + <li> Build host tools necessary to build the compiler such as texinfo, bison, + gperf.<p> + + <li> Build target tools for use by the compiler such as gas, gld, and + binutils if they have been properly unpacked into the GCC source tree.<p> + + <li> Perform a 3-stage bootstrap of the compiler.<p> + + <li> Perform a comparison test of the stage2 and stage3 compilers.<p> + + <li> Build runtime libraries using the stage3 compiler from the previous + step. +</ul> + +<p>If you are short on disk space you might consider `<code>make +bootstrap-lean</code>' instead. This is identical to `<code>make +bootstrap</code>' except that object files from the stage1 and +stage2 of the 3-stage bootstrap of the compiler are deleted as +soon as they are no longer needed. + +<p>If you want to save additional space during the bootstrap and in +the final installation as well, you can build the compiler binaries +without debugging information with "make CFLAGS='-O' LIBCFLAGS='-g +-O2' LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap". This will save +roughly 40% of disk space both for the bootstrap and the final installation. +(Libraries will still contain debugging information.) + +<p>If you used the flag <code>--enable-languages=...</code> to restrict +the compilers to be built, only those you've actually enabled will be +built. This will of course only build those runtime libraries, for +which the particular compiler has been built. Please note, +that re-defining LANGUAGES when calling `<code>make bootstrap</code>' +<b>*does not*</b> work anymore! + +<h2>Building a cross compiler</h2> + +<p> We recommend reading the +<a href="http://www.objsw.com/CrossGCC/"> +crossgcc FAQ</a> for information about building cross compilers. + +<p>When building a cross compiler, it is not generally possible to do a +3-stage bootstrap of the compiler. This makes for an interesting problem +as parts of GCC can only be built with GCC. + +<p>To build a cross compiler, we first recommend building and installing a +native compiler. You can then use the native GCC compiler to build the +cross compiler. + +<p>Assuming you have already installed a native copy of GCC and configured +your corss compiler, issue the command "make", which performs the +following steps: +<ul> + <li> Build host tools necessary to build the compiler such as texinfo, bison, + gperf.<p> + + <li> Build target tools for use by the compiler such as gas, gld, and + binutils if they have been properly unpacked into the GCC source tree.<p> + + <li> Build the compiler (single stage only).<p> + + <li> Build runtime libraries using the compiler from the previous + step. +</ul> + +<p>Note that if an error occurs in any step the make process will exit. + +<h2>Building in parallel</h2> + +<p> If you have a multiprocessor you can use `<code>make bootstrap +MAKE="make -j 2" -j 2</code>' instead of just `<code>make bootstrap</code>' +when building GCC. You can use a bigger number instead of two if +you like. In most cases, it won't help to use a number bigger than +the number of processors in your machine. + +<p> +<hr> +<i>Last modified on July 16, 1999.</i> + +</body> +</html> |