> 1) Using Sun's as/ld. I build gcc this way:
>       cd /tmp
>       gtar xjf ~/gcc-4.0.0.tar.bz2
>       mkdir gcc
>       cd gcc
>       setenv CONFIG_SHELL /bin/ksh
>       /tmp/gcc-4.0.0/configure \
>               --prefix=/usr/local/gcc-4.0.0
>       gmake bootstrap
>
> The build fails with the following message:
> ld: fatal: relocation error: R_SPARC_DISP32:
> file .libs/libstdc++.lax/libsupc++convenience.a/vterminate.o:
> symbol <unknown>: offset 0xfccd33ad is non-aligned

Probably a Sun 'as' bug, a similar problem was reported on Solaris 7:
http://gcc.gnu.org/install/specific.html

GCC 4.0.0 is known to bootstrap on Solaris 8 with:
as: Sun WorkShop 6 03/08/05 Compiler Common 6.0 Patch 114802-01
ld: Software Generation Utilities - Solaris Link Editors: 5.8-1.285

> Would it be possible to document this requirement in the platform pages?
> http://gcc.gnu.org/install/specific.html#sparc-sun-solaris2

It is already documented in *-*-solaris2* that 2.15 is broken on the platform.

> Speaking of the sparc-sun-solaris2* platform, I read:
>       GCC 3.4 changed the default debugging format from STABS
>       to DWARF-2 for 32-bit code on Solaris 7 and later. If you
>       are using the Sun assembler, this change apparently runs
>       afoul of Sun bug 4910101, for which (as of 2004-05-23)
>       there is no fix. A symptom of the problem is that you
>       cannot compile C++ programs like groff 1.19.1 without
>       getting messages similar to the following:
>       ld: warning: relocation error: R_SPARC_UA32: ...
>         external symbolic relocation against non-allocatable
>         section
>         .debug_info cannot be processed at runtime:
>         relocation ignored.
>       To work around this problem, compile with -gstabs+
>       instead of plain -g
>
> I had a look at Sun Online Support and found:
>       Bug ID: 4910101
>       Synopsis: fbe needs a way to reference section labels
>       Category: compiler
>       Subcategory: assembler-x86
>       Description:
>       The bug was first found with the -misalign flag, but the
>       real bug is because the code is being passed through the
>       assembler.
>       Integrated in releases: k2_dev
>       Summary: fbe needs a way to reference section labels
>
> Therefore :
> 1) This seems to be x86-specific, so I would suggest moving this
> paragraph from sparc-sun-solaris2* to i?86-*-solaris2*

The problem is present on SPARC so the paragraph can't be moved.
Not sure whether the bug ID is correct though.

-- 
Eric Botcazou

Reply via email to