gcc 4.2.2 bootstrap fails on i386-pc-solaris2.11

Dennis Clarke dclarke@blastwave.org
Sat Oct 13 06:00:00 GMT 2007


I seem to be hitting a bad luck streak here.  First with Solaris 8 Sparc and
now with Solaris Nevada on x86.

In this case the error message is related to the file unwind-dw2.o

configure line is thus :

bash-3.2$ /export/home/dclarke/build/gcc-4.2.2/configure
--with-as=/usr/ccs/bin/as --without-gnu-ld --with-ld=/usr/ccs/bin/ld --enab
le-threads=posix --disable-nls --prefix=/export/home/dclarke/local
--with-local-prefix=/export/home/dclarke/local --enable-shared --
enable-languages=c,c++,objc,fortran --with-gmp=/export/home/dclarke/local
--with-mpfr=/export/home/dclarke/local --enable-bootstrap

Which is all well and good.

until this happens :

/export/home/dclarke/build/gcc-4.2.2-build/./gcc/xgcc
-B/export/home/dclarke/build/gcc-4.2.2-build/./gcc/
-B/export/home/dclarke/local/i386-pc-solaris2.11/bin/
-B/export/home/dclarke/local/i386-pc-solaris2.11/lib/ -isystem
/export/home/dclarke/local/i386-pc-solaris2.11/include -isystem
/export/home/dclarke/local/i386-pc-solaris2.11/sys-include -O2  -O2 -g 
-DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g
-DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I.
-I/export/home/dclarke/build/gcc-4.2.2/gcc
-I/export/home/dclarke/build/gcc-4.2.2/gcc/.
-I/export/home/dclarke/build/gcc-4.2.2/gcc/../include
-I/export/home/dclarke/build/gcc-4.2.2/gcc/../libcpp/include
-I/export/home/dclarke/local/include -I/export/home/dclarke/local/include
-I/export/home/dclarke/build/gcc-4.2.2/gcc/../libdecnumber -I../libdecnumber
-m64 -fexceptions  -c /export/home/dclarke/build/gcc-4.2.2/gcc/unwind-dw2.c
-o libgcc/amd64/unwind-dw2.o
Assembler: unwind-dw2.c
        "/var/tmp//cc_taiSb.s", line 396 : Warning: Illegal subtraction -
symbols from different sections: ".L63", ".L73"
        "/var/tmp//cc_taiSb.s", line 397 : Warning: Illegal subtraction -
symbols from different sections: ".L63", ".L73"
        "/var/tmp//cc_taiSb.s", line 398 : Warning: Illegal subtraction -
symbols from different sections: ".L63", ".L73"
        "/var/tmp//cc_taiSb.s", line 399 : Warning: Illegal subtraction -
symbols from different sections: ".L63", ".L73"
        "/var/tmp//cc_taiSb.s", line 840 : Warning: Illegal subtraction -
symbols from different sections: ".L111", ".L141"
.
.
.  lot of similar lines of Warnings
.
.
        "/var/tmp//cc_taiSb.s", line 391 : Illegal subtraction - symbols
from different sections: ".L72", ".L73"
make[4]: *** [libgcc/amd64/unwind-dw2.o] Error 1
make[4]: Leaving directory `/export/home/dclarke/build/gcc-4.2.2-build/gcc'
make[3]: *** [stmp-multilib] Error 2
make[3]: Leaving directory `/export/home/dclarke/build/gcc-4.2.2-build/gcc'
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/export/home/dclarke/build/gcc-4.2.2-build'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/export/home/dclarke/build/gcc-4.2.2-build'
make: *** [all] Error 2
bash-3.2$

Did xgcc get created ?  Yes :

bash-3.2$
bash-3.2$ file /export/home/dclarke/build/gcc-4.2.2-build/./gcc/xgcc
/export/home/dclarke/build/gcc-4.2.2-build/./gcc/xgcc: ELF 32-bit LSB
executable 80386 Version 1 [FPU], dynamically linked, not stripped
bash-3.2$

But the idea of a bootstrap just went out the window it seems.

The entire filthy gory mess of output can be see at :

http://www.blastwave.org/dclarke/gcc-4.2.2/gcc-4.2.2-i386-pc-solaris2.11-bootstrap-failure.txt

I am going to go backwards and simply bootstrap GCC 4.2.1 on the exact same
machine with the exact same methods. If GCC 4.2.1 is able to build to
completion then I hold the new GCC 4.2.2 a little suspect here.

I do thank, in advance, anyone curious enough to even look at all this. I
really do feel strongly that GCC should be able to bootstrap on
sparc-sun-solaris2.8 or sparc-sun-solaris2.10 or any variation thereof with
the free Sun Studio 12 compilers or with the ( $big money$ ) Sun Studio 8
compilers. Thus far I am quite able to get GCC 4.2.1 to bootstrap. I'll
verify that with a test. In the meantime I appeal to anyone that sees the
error of my ways. Please don't hesitate to provide me with suitable
correction.

Dennis Clarke



More information about the Gcc-help mailing list