Jeroen Scheerder <[EMAIL PROTECTED]> writes:

> Partial success only.  I think I'll be able to build it without C++
> support, but compilation per your instruction does choke on 
> libstdc++.so.6.0.4.

I've had the same problem and think I know what's going on.

> ld: fatal: relocation error: file: .libs/stdexcept.o section: .rel.debug_info 
> symbol: : relocation against a discarded symbol,
>         symbol is part of discarded section: 
> .gnu.linkonce.t._ZNSt12out_of_rangeD0Ev

If I compare stdexcept.s when building with /usr/sfw/bin/gas vs. gas
2.15.96, I see differences like the following:

 .Ltext0:
        .weak   _ZTISt11logic_error
-       .section        .gnu.linkonce.r._ZTISt11logic_error,"a",@progbits
+       .section        
.gnu.linkonce.r._ZTISt11logic_error,"aG",@progbits,_ZTISt11logic_error,comdat

Comparing gcc/auto-host.h between bootstraps with those different gas
versions, I find:

 /* Define 0/1 if your assembler supports COMDAT group. */
-#define HAVE_GAS_COMDAT_GROUP 0
+#define HAVE_GAS_COMDAT_GROUP 1

So obviously Sun ld doesn't have the necessary support for COMDAT groups
(even with GNU ld, a quite recent version seems to be required).
Unfortunately, gcc's configure.ac doesn't check for this, but should.

        Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University

Reply via email to