Subject: I've been playing with GCC 3.2/3.2.1
To: None <tech-toolchain@netbsd.org>
From: Lloyd Parkes <lloyd@must-have-coffee.gen.nz>
List: tech-toolchain
Date: 01/09/2003 12:21:37
Just some random thoughts, and commentary on a couple of speed bumps.

I have ld from binutils 2.13 installed in /usr/local/bin and GCC 3.2.1 
installed in /usr/local/.... I have deleted /usr/bin/gcc, /usr/bin/g++, 
/usr/local/bin/cc and /usr/local/bin/c++. This gives me a system C compiler 
called cc and the GNU addon called gcc, just like every other computer I use. 
This distinction becomes important because of ABI changes in C++ (not that I 
know what those changes are).

The C compiler seems to work really well. At least one codegen bug has been 
fixed, and I'm going to start checking one or two other codegen bugs I found 
in 2.95.3.

The C++ compiler seems to have a problem because binaries it builds use 
libgcc, and it looks as if the shared version of libgcc is built with non-PIC 
code. The error I get is 'Undefined symbol "" (reloc type = 12, symnum = 21)', 
but I haven't bothered trying to find out what this means. Using 
-static-libgcc works, and I have noticed that libgcc.mk seems to use the same 
.o files for libgcc.a and libgcc_s.so.1.

The NetBSD gcc prints out its version number as '2.95.3' while GCC 3.2.1 
prints several lines of text and warranty information. This causes 
pkgsrc/lang/gcc/buildlink2.mk to become unhappy.

Cheers,
Lloyd