I finally got "make bootstrap" to work! Jan-Jaap's final comment put me on to it...
BTW: requiring GCC to be able to build exe's is not needed here. compilation is enough. But, autoconf did not permit this.
I figured that GCC ought to be able to do compilations if it's already built the stage 2 compiler, so I hacked the gcc/p/rts/configure script to take out the test that was failing. That allowed the build process to continue, and it all worked!
The only problem now is that the fileserver is out of space so I can't install it tonight. Ho, hum!
I appreciate that this is a gross hack, but I know nothing about how the "configure" script is generated so I don't know how the duff test should really be removed.
I've attached a gdiff showing my handiwork.
Thanks to everyone for all your help.
Kevin
-----Original Message----- From: Jan-Jaap van der Heijden [mailto:janjaap@wit381304.student.utwente.nl] Sent: 25 January 1999 22:01 To: GNU Pascal mailinglist Subject: RE: gpc-19990118: C compiler cannot create executables.
On Mon, 25 Jan 1999 kevin.broadey@ats.uk.eds.com wrote:
I thought `make bootstrap' did `make LANGUAGES=c' to build
the stage 1
compiler, and then `make LANGUAGES="c c++ fortran pascal
..."' for stage
- Or isn't this what you mean? Is there some unfortunate
dependency
between the C and Pascal compilers at each particular stage?
`make bootstrap' will `make LANGUAGES=c' for the first stage because it makes no sense to build the rest at this point. The stage2 and stage3 compilers are complete, or a `make compare' wouldn't work.
I did most of the Makefile for the gcc/p directory, quite some time ago. A make LANGUAGES=pascal should work (I do it all the time). First, it builds gpc1. When it goes on to libgcc.a and libgpc.a, it requires GCC_FOR_TARGET and GPC_FOR_TARGET. GCC_FOR_TARGET means LANGUAGES=c gets built. The circular dependancy is not nice, but not fatal too. I only saw it fail in a cross config, where I failed to specify a good RANLIB, resulting in a bad libgcc, resulting in a "gcc cannot create executables" when entering the RTS ...
The stage 1 compiler built correctly, but when the
'final' compiler
was compiling I got this... [...] configure: error: installation or configuration problem: C
compiler cannot create executables.
[...]
... which someone else also got ? BTW: requiring GCC to be able to build exe's is not needed here. compilation is enough. But, autoconf did not permit this.
Yes: Do `make LANGUAGES=c' first, and then `make
LANGUAGES=pascal'.
Hmmm.
If someone out there is a Makefile wizart, he/she is invited to help us to resolve a circular dependency and some other drawbacks in GPC's Makefiles.
I can take a look at it. The circular dependancy is somewhere in C++ rules, something about GCC_PARTS used instead of GCC_PASSES for libgcc2 somewhere, can't quite remember. G77 suffered from it too, and they fixed it.
Greetings, JanJaap
GNU mingw32: http://agnes.dida.physik.uni-essen.de/~janjaap/mingw32