Aaron Gray wrote:
> checking for C compiler default output file name... configure:
> error: C compiler cannot create executables
This used to stop a virgin build of the mingw-runtime libraries;
as part of the standard configure test for the compiler, it tries
to link a minimal executable. For this to succeed, the linker
must be able to locate crt0.o, one of the library components that
we are trying to build, so of course, it doesn't exist yet. Thus,
the link fails, configure decides that it can't find a working
compiler, and stops dead.
Of course, to build a runtime library, it isn't necessary to have
a compiler which can create fully functioning executables; it is
sufficient that it can emit object files. To work around this
chicken and egg scenario, GCC configury includes a hack to defeat
autoconf's default requirement that a compiler must be able to
create executables; this hack is deployed for the purpose of
building the runtime libraries.
AFAIK, current versions of mingw-runtime and w32api should also
incorporate this GCC hack, so you shouldn't be seeing this error
when you build those specific components. That you are seeing
it suggests that, at whatever point it occurs, your runtime
libraries and associated object components have not (yet) been
installed where the compiler expects to find them.