blob: 5cc95c7ca7e0446df0b4c33b1d10545b03a2657d [file] [log] [blame]
<title>Host/Target specific installation notes for egcs-1.0.3 </title>
<body bgcolor="white">
<h1 align="center">Host/Target specific installation notes for egcs-1.0.3</h1>
No specific installation needs/instructions.
You will need binutils- or newer for exception handling to work.
The SCO assembler is currently required. The GNU assembler is not up
to the task of switching between ELF and COFF at runtime.
<br>Unlike various prereleases of GCC, that used '-belf' and defaulted to
COFF, you must now use the '-melf' and '-mcoff' flags to toggle between
the two object file formats. ELF is now the default.
<br>Look in gcc/config/i386/sco5.h (search for "messy") for additional
OpenServer-specific flags.
<br>Systems based on OpenServer before 5.0.4 (<code>uname -X</code> will
tell you what you're running) require TLS597 from for
C++ constructors and destructors to work right.
You'll need a patch to fix an egcs bug on this platform.
<a href=""> x86 solaris patch</a>
We <b>highly</b> recommend using gas/binutils-2.8 on all hppa platforms; you
may encounter a variety of problems when using the HP assembler.
The HP assembler has major problems on this platform. We've tried to work
around the worst of the problems. However, those workarounds may be causing
linker crashes in some circumstances; the workarounds also probably prevent
shared libraries from working. Use the GNU assembler to avoid these problems.
<br>The configuration scripts for egcs will also trigger a bug in the hpux9
shell. To avoid this problem set CONFIG_SHELL to /bin/ksh and SHELL to
/bin/ksh in your environment.
For hpux10.20, we <b>highly</b> recommend you pick up the latest sed
patch from HP. HP has two sites which provide patches free of charge.
<br><a href="">US, Canada, Asia-Pacific, and
<br><a href="">Europe</a>
<p>Retrieve patch PHCO_12862.
<p>The HP assembler on these systems is much better than the hpux9 assembler,
but still has some problems. Most notably the assembler inserts timestamps
into each object file it creates, causing the 3-stage comparison test to fail
during a "make bootstrap". You should be able to continue by saying "make all"
after getting the failure from "make bootstrap".
You absolutely must use GNU sed and GNU make on this platform.
<p>If you try to build the integrated C++ & C++ runtime libraries on this system
you will run into trouble with include files. The way to get around this is
to use the following sequence. Note you must have write permission to
<i>prefix</i> for this sequence to work.
<p>cd <i>objdir</i><br>
make all-texinfo all-bison all-byacc all-binutils all-gas all-ld<br>
cd gcc<br>
make bootstrap<br>
make install-headers-tar<br>
cd ..<br>
make bootstrap3<br>
It is reported that you may need the GNU assembler on this platform.
You must use GAS on these platforms, the native assembler can not handle the
code for exception handling support on this platform.
<p>These systems don't have ranlib, which various components in egcs need; you
should be able to avoid this problem by installing GNU binutils, which includes
a functional ranlib for this system.
<p>You may get the following warning on irix4 platforms, it can be safely
warning: foo.o does not have gp tables for all its sections.
You must not use GAS on irix6 platforms; doing so will only cause problems.
<p>These systems don't have ranlib, which various components in egcs need; you
should be able to avoid this problem by making a dummy script called ranlib
which just exits with zero status and placing it in your path.
At least one person as reported problems with older versions of gnu-make on
this platform. make-3.76 is reported to work correctly.
You will need
<a href="">binutils-</a> for
a working egcs. It is strongly recommended to recompile binutils with egcs
if you initially built it with gcc-2.7.2.*.
It has been reported that you might need binutils- for this
platform too.
<a href="">binutils-</a>
exception handling
<p>XXX Linux stuff
-k encaps stuff
<i>Last modified on February 7, 1998.</i>
<!--#include virtual="/glimpsebox.html"-->