The "/mingw" related problems can be solved by using this
approach:
http://gcc.gnu.org/ml/gcc-patches/2006-06/msg00354.html
I'm following your article too, and have come across some problem:
binutils: binutils-2.17.50.0.2 from www.kernel.org
gcc: gcc-4.1.1 from gcc.gnu.org
step1 and step2 are all ok, and in step3, I get the error msg:
{standard input}: Assembler messages:
{standard input}:2: Error: unknown pseudo-op: `.def'
{standard input}:2: Error: unknown pseudo-op: `.scl'
{standard input}:2: Error: unrecognized symbol type ""
{standard input}:2: Error: junk at end of line, first unrecognized character
is `3'
{standard input}:2: Error: unknown pseudo-op: `.endef'
{standard input}:6: Error: unknown pseudo-op: `.def'
{standard input}:6: Error: unknown pseudo-op: `.scl'
{standard input}:6: Error: unrecognized symbol type ""
{standard input}:6: Error: junk at end of line, first unrecognized character
is `3'
{standard input}:6: Error: unknown pseudo-op: `.endef'
*** The command '../xgcc/bin/i686-pc-mingw32-gcc -o
nftest -O2 -g0 -pipe -s conftest.c' failed.
*** You must set the environment variable CC to a working compiler.
, and the config.log file is:
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
configure:600: checking host system type
configure:621: checking target system type
configure:639: checking build system type
configure:694: checking for a BSD compatible install
configure:747: checking whether ln works
configure:771: checking whether ln -s works
configure:2080: checking for i686-pc-mingw32-gnatbind
configure:2112: checking for gnatbind
configure:2145: checking whether compiler driver understands Ada
configure:2177: checking how to compare bootstrapped objects
configure:2275: checking for correct version of gmp.h
configure:2288: ../xgcc/bin/i686-pc-mingw32-gcc -c -O2 -g0 -pipe
conftest.c 1>&5
configure:2278:17: error: gmp.h: No such file or directory
configure: In function 'main':
configure:2282: error: 'choke' undeclared (first use in this function)
configure:2282: error: (Each undeclared identifier is reported only once
configure:2282: error: for each function it appears in.)
configure:2282: error: expected ';' before 'me'
configure: failed program was:
#line 2277 "configure"
#include "confdefs.h"
#include "gmp.h"
int main() {
#if __GNU_MP_VERSION < 3
choke me
#endif
; return 0; }
it seems that xgcc/bin/i686-mingw32-gcc doesn't use
xbin/bin/i686-mingw32-as, but use the
system's as insead even if I've export AS=xbin/bin/i686-mingw-as, the gcc
doesn't notice it.