cygwin-gcc -mno-cygwin vs mingw (WAS: RE: CygUtils Version of zip(and Symlinks))

Charles Wilson cwilson@ece.gatech.edu
Thu May 25 10:32:00 GMT 2000


"Parker, Ron" wrote:
> 
> > mingw == 'free alternative for a good Win32 compiler'
> > cygwin-gcc -mno-cygwin == 'another free alternative for a good Win32
> > compiler'
> > cygwin-gcc -mno-cygwin != mingw
> >
> > I'm not sure how this affects your argument below, but the difference
> > between cygwin-gcc -mno-cygwin and mingw does need to be considered.
> 
> Enlighten me or direct me to a source if possible.  What are the
> differences?

AFAIK, 'cygwin-gcc -mno-cygwin' is a cross-compile as Earnie put it. You
have a 'cygwin-native' gcc running in the POSIX environment provided by
cygwin, but you use it to build a Win32-native executable that does not
depend on cygwin at all. So, it's like using a Linux gcc to
cross-compile a Win32 program; I think you should have separate include
dirs and lib dirs when building this way -- just like you would in a
"normal" linux cross-compile setup.

mingw is a port of gcc that actually runs in the Win32-native system.
The compiler itself does not need or use the POSIX environment provided
by cygwin. In fact, you can install mingw and use it without having
cygwin installed at all. So, mingw is a native win32 compiler.

So, since we're disussing whether to build zip as a unix or a windows
program, the right answer IMO is:

cygwin-gcc, target=cygwin: build as unix
cygwin-gcc -mno-cygwin: build as win32
mingw: build as win32

Someone else mentioned whether 'UNIX' or some variation thereof should
be defined in the specs file for cygwin-gcc. IMO, yes -- but only if
!mno-cygwin.

--Chuck

P.S. see http://www.mingw.org/ for more info.

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list