Re: w32api: configure: error: C compiler cannot create executables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > Hello,
> >
> > I am building a cross compiler (linux 32 bits -> windows 32 bits).
> > I have compiled and installed:
> > - binutils-2.24.51
> > - gcc-4.9.1 (with mingwrt-4.0.3.1 and w32api-4.0.3.1 headers)
> >
> > But when I try to configure the w32api library, I got an error:
> > $ ./configure --prefix=/usr/i686-pc-mingw32 --build=`./config.guess` --host=i686-pc-mingw32 --disable-nls
> > bash: ./config.guess: No such file or directory
> > configure: WARNING: unrecognized options: --disable-nls
> > configure: WARNING: if you wanted to set the --build type, don't use --host.
> >     If a cross compiler is detected then cross compile mode will be used
> > checking build system type... i686-pc-linux-gnu
> > checking host system type... i686-pc-mingw32
> > checking target system type... i686-pc-mingw32
> > checking for i686-pc-mingw32-gcc... i686-pc-mingw32-gcc
> > checking whether the C compiler works... no
> > configure: error: in `/tmp/build/w32api-4.0.3-1.mingw32-src':
> > configure: error: C compiler cannot create executables
> > See `config.log' for more details
> >
> > As you can see, there is a missing "config.guess" file in the archive.
> 
> Is it supposed to be there?
> 
> > Also, the "--disable-nls" option is not available.
> 
> Then why are you using it?
> 
> > Maybe it can explain why the C compiler is recognize by the configure script as not working.
> >
> > Do you have any idea why I am unable to compile this w32api please?
> 
> w32api is not part of GCC, maybe you should ask on a mingw list, but
> it looks like you're calling its configure wrong and then complaining
> that it doesn't work.

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 is just strange that this file is missing.

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.

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.

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

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.
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.




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux