w32api: configure: error: C compiler cannot create executables

Jonathan Wakely jwakely.gcc@gmail.com
Thu Aug 7 22:07:00 GMT 2014


On 7 August 2014 22:05, YuGiOhJCJ Mailing-List wrote:
> For the "config.guess" file, yes it was supposed to be there because in w32api-3.17 this file was present.
> In w32api-4.0.3.1, it is absent.
> This file is useful to guess my platform:
> $ ./config.guess
> i686-pc-linux-gnu
> So, instead of calling this config.guess script, I can replace it by the "i686-pc-linux-gnu" string.

It's used by configure to guess you platform if you don't tell it, so
using the script to tell configure is just pointless, you're setting
the value to what will be guessed anyway.

Don't use the --build option, and configure will guess it for you (by
calling build.aux/config,guess ... apparently you didn't look very
hard for the file).

> It is just strange that this file is missing.

It's just moved.

Stop using --build=`config.guess` because it's pointless, and the
problem goes away.

> For the "--disable-nls" option it is because I don't need Native Language Support for this compiler.
> This option was available for w32api-3.17 but seems to be absent from the w32api-4.0.3.1 release.

But w32api is not the compiler. If you don't want NLS in the compiler,
pass --disable-nls to the compiler, you don't need to pass it to other
things. So you can just stop using that option too.

> Yes, I am aware that this is a problem of w32api (which is part of the mingw project).
> This mailing-list is for discussions about gcc.
> On the mailing-list of mingw, I have already asked, and there is a lack of responses so I try here.
> I am using gcc-4.9.1 to build my cross-compiler as you can see above, so we can say that this discussion is not completely out of the mailing-list focus.

Just because you use GCC to compile some code doesn't make this list
the right place to ask about that code.


> I am wondering why my C compiler cannot create executables.
> I have compiled it with these options:
> $ ../gcc-4.9.1/configure --prefix=/usr --target=i686-pc-mingw32 --disable-shared --enable-languages=c --disable-nls

Look in the config.log file, it will show why it failed.

> I have always used these options for building my cross-compiler.
> Today, I try with a new version of gcc and it is a failure.

Because you used a different version of w32api, it has nothing to do
with the new GCC.

> Instead of downgrading, I would like to understand better why it does not work with the latest gcc, binutils, w32api and mingwrt.
> If anyone has an idea about that, please tell me.

The w32api package changed, but that's nothing to do with GCC.



More information about the Gcc-help mailing list