Ed Smith-Rowland <address@hidden> writes:
Greetings,
After successfully building the tarball I decided to go crazy and see
if I could bootstrap from gcc-HEAD. This is on 64-bit RHEL5.
Hi Ed,
very interesting - thanks for trying and reporting this!
1. I copied the gm2 directory into an up to date checkout of gcc.
2. I configured:
../gcc/configure --prefix=/home/ed/bin-gm2-head --with-gmp=/usr/local
--with-mpfr=/usr/local --enable-languages=c,c++,gm2
(A rather recent gmp and mpfr are required - the OS-supplied versions
are too old.)
3. I make
Pretty soon I run into a problem with gm2-.def with the four tree
codes copied from C++ for exception handling. There is a complaint
about redefinitions. Something changed in the architecture of gcc.
4. As a shot in the dark I just commented the four offending tree codes.
I don't know why when we build c++ in both trees it works in 4.1.2 but
not in 4.4. But whatever.
The build proceeds very much further until is gets to gm2spec.c. This
is where command line arguments are parsed.
The errors involve casts between "char ***" and "const char * const
**" and similar.
I shamelessly copied a mechanism they use in gfortran where they have
two sets of static variables for input and output argc and argv and
use cast macros to get around.
The build is proceeding a bunch further until a build of xgm2 where
there is am undefined symbol "prune_options".
This is found in gcc/opts-common.o
Adding that object file leads to more symbols cl_options and
cl_options_count not defined. I found *those* under the gm2 build
directory in options.c. When I add options.o I get tons of undefined
symbols.
I don't know how to resolve these symbols. Maybe there is a lib with
all this stuff in it?
If anyone has tried this do you have any ideas?
Is anyone interested in what (little) progress I've made? I could
send the changed files.
yes please - please post the diffs!