This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: merging mingw and cygwin
- From: Mike Fahlbusch <mcf at chariot dot net dot au>
- To: cygwin at cygwin dot com
- Date: Sun, 12 Oct 2003 12:43:22 +0930
- Subject: Re: merging mingw and cygwin
- References: <20031011001648.GG2659@mdssirds.comp.pge.com>
At 09:46 AM 11/10/2003, you wrote:
I've been playing around with mingw and cygwin, and was wondering why
these were separate
projects? I've been trying to get a unix API moved over to windows; I want
a Unix
environment,
cygwin is the answer
but at the same time want to be able to make Win32 native binaries,
*without* the need of the cygwin dlls.
mingw32 can do that
So - I've been trying various things:
1) cygwin
2) mingw
3) uwin
4) mks toolkit
all of which are unsatisfactory in some way or another. #3 and #4 in
particular are
proprietary; and #3 and #4 both have less support in gnu tools than I care
for. #3 looks
nice, but furthermore doesn't seem to be supported in at&t anymore..
However, #1 and #2 are a puzzle: why are they two separate projects? Its
terribly
confusing; both have the same executable files created (ln and rm, for
example) so
its hard to use one with the other; and its got to be a maintenance
nightmare to
support separate patches for mingw and separate patches for cygwin.
So - why aren't the two merged? Why isn't there a 'mingw' mode for cygwin,
where
the ability to use the cygwin*.dll is turned off, and mingw executables
can be compiled
under cygwin tools? And where constructs like using shortcuts for symlinks
are turned
off, to make projects more win32 friendly...
If you want a win32 compiler that works like MS visual C compiler but
without the IDE then use mingw32. Although it can compile either -mconsole
programs (using printf) or -mwindows programs (using the win32 API) it's
not a *nix environment. *nix programs can't usually be compiled with it
unless they are text-only console programs. But it has many *nix workalike
tools for it like binutils.
With cygwin it is designed to be just like using *nix. *nix programs
compile under cygwin, starting with bash, ./configure, make and gcc. It
even has xwindows. It is like using *nix but under MS windows. Ideally
any *nix program will compile and run under cygwin.
When I want to produce a win32 program I use mingw32. When I want to use a
*nix program I use cygwin.
I'd think that this would be easier in the long run. If the two projects
were merged..
But then again, who am I to make such a decision.. ;-)
A cut-down form of mingw32 is included in cygwin but I've never used
it. mingw32 is a descendant of gcc converted to run under MS
windows. cygwin is unix converted to run under MS windows (including
gcc). mingw32 is concerned with MS windows compatibility, whereas cygwin
is about *nix compatibility.
Sig:
Think outside the dot.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/