Last change: Sun Aug 22 01:39:28 CDT 1999
EGCS was an experimental step in the development of GCC, the GNU C compiler. Consult the egcs web site for more information. As of April, 1999 FSF GCC project has merged with EGCS and the result is gcc-2.95 release on July 31, 1999. The project has been renamed GNU Compiler Collection or GCC. The upshot of all this is that what was to be egcs-1.2 essentially became gcc-2.95.
The terms Cygwin, Mingw32, UWIN etc refer to various x86-win32 GCC subtargets; subtargets in the sense they share almost all of the backend, and use the same executable format and underlying windows32 operating system, except that the runtime environment is radically different. You can even build one copy of GCC that can, given the right specs file, proper target includes and libraries and suitable command line options, build executables to run under any of these various runtime environments (eg., see my -mno-cygwin howto for some notes on creating Mingw32 executables/DLLs using Cygwin development environment).
So, how do they differ?
For general information, see: <URL:http://sourceware.cygnus.com/cygwin/>
For gcc toolchain, see: <URL:http://www.xraylith.wisc.edu/~khan/software/gnu-win32/gcc.html>
For older egcs toolchain, see: <URL:http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html>
The free version of Cygwin runtime is distributed under the GNU Public License (GPL) and that means all code that uses Cygwin DLL also must be distributed under the GPL. You can of course purchase a commercial license from Cygnus Solutions that may not have this "restriction". However, Cygnus has recently clarified the licensing issues, and you should consult Cygwin home page (URL above) for updates.
For general information, see Colin Peters'
GCC for Win32
<URL:http://www.geocities.com/Tokyo/Towers/6162/gcc.html>
For gcc toolchain, see: <URL:http://www.xraylith.wisc.edu/~khan/software/gnu-win32/gcc.html>
For older egcs toolchain, see: <URL:http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html>
There is absolutely no licensing issues when using the Mingw32 toolset. The Mingw runtime is in the public domain, and you get the license to use CRTDLL (Microsoft C runtime) when you purchase a copy of the Microsoft Win9x/NT operating system. You can also use the MSVC add-on to create executables that depend on MSVCRT, which is available on just about all the Win9x/NT machines available today.
For general information, see: <URL:http://www.research.att.com/sw/tools/uwin/>
For gcc toolchain, see: <URL:http://www.xraylith.wisc.edu/~khan/software/gnu-win32/gcc.html>
For older egcs toolchain, see: <URL:http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html>
You need to install UWIN base package first before you can use executables/DLLs produced by the GNU compilers. To be able to use GNU compilers on UWIN, you also need the UWIN development package.
I'm sure I've missed a few and ignored a few others, and hopefully someone else fill those in.