This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Compiling apps to Mingw32 with cygwin

Robert Collins wrote:
> ----- Original Message -----
> From: "Earnie Boyd" <>
> > 1) `gcc -mno-cygwin' is not a cross compile.
> > 2) it is possible to emulate a cross build system using a scripted
> `gcc
> > -mno-cygwin' and symlinks.
> > 3) `gcc -mno-cygwin' switches the build environment from Cygwin to
> > MinGW.
> Earnie, on 3) I believe we have a terminology problem. gcc -mno-cygwin
> changes the _build target_ to mingw32, no the build _environment_.
> In the context of configure scripts the build _environment_ is the
> platform hosting the running script, and doing the compilation - that is
> cygwin.

You need to narrow your thinking to GCC and binutils the processes of
consequence.  You only need to specify the triplet because config.guess
guesses wrong based on the value of `uname -s'.  The cygwin binutils as
named will produce executables that use MSVCRT.DLL instead of
CYGWIN1.DLL without having to do anything special with their names or
output.  So, my statement stands based on what happens with GCC, you're
switching the build environment.

> > > You said this was wrong. To be consisent with future behavior, it
> seems that
> > > I must specify build. So if you're suggesting that I'm not
> cross-compiling,
> > > then it would be:
> > >
> > >         $ env CC=mgcc
> ./configure --host=i686-pc-mingw32 --build=i686-pc-mingw32
> > >
> >
> > This is what I would do.
> IMO this is wrong (wrong build value) - see my comment earlier.

No, you're not doing a cross build, therefore I've stated the correct


Do You Yahoo!?
Get your free address at

Unsubscribe info:
Bug reporting:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]