Python under Windows: free cl.exe?

Alex Martelli aleax at
Tue Aug 21 11:41:44 CEST 2001

"J.Jacob" <joost_jacob at> wrote in message
news:13285ea2.0108201346.241cae3 at
> The cygwin effort of using a free GNU C++ compiler for building Python
> great but there are just too much systems/packages/modules (Python itself

Python 2.1.1 is one of the packages available for Cygwin.

> based on the microsoft compiler with makefiles for nmake and nothing for
> Gnu compilers.  Too bad i think !  I would much rather use the Gnu
> but...i do not want to have to rewrite tons of makefiles and
> all the time and i can not beat microsoft so i have to join.

You don't have to "beat Microsoft" on your own, because lots of
other people are working towards the same goal, and Cygwin gives
you a very good environment for such purposes.

The amount of effort typically required to build a Unix package
(as obtained from a source .tgz as you typically download from
the net) is:
    -- unpack it with tar zxf whatever.tgz
    -- cd whatever
    -- ./setup
    -- ./make
that's it.  I.e., exactly the same amount of effort typically
required on a good Linux box.  I've installed Cygnus and XFree86
from the pre-built packages (including Python 2.1.1), but then
adding other packages from sources was exactly such a snap.  For
example, cygwin comes with gcc 2.9x for some value of x -- I then
downloaded gcc 3.0 (wanted to experiment with the latest level
of support for native-code ahead-of-time compilation of Java,
C++ compliance level with the standard, code-generation quality,
etc), and it WAS just such a snap to build it on Cygwin as on
the Linux box.  WindowMaker and its supporting library, ditto
(XFree is really NOT very nice with twm as the windowmanager;-).

If you *WANT* to use Microsoft's compilers, that's one thing --
they do have their pluses, such as the excellent ATL framework
for COM work, for example.  But if, as you say, you "would much
rather use the Gnu compiler", this is perfectly feasible today.

Indeed, the tradeoff today between:
    A) a MS Windows OS with cygwin on top, or
    B) a Mandrake Linux install with win4lin on top,
is basically: A gives you an easier time with running peculiar
Windows programs (you probably do need A for certain games,
and in fact the OS had better be Win98 -- ME, 2000 and XP fail
to run quite a few games that play too-dirty tricks, too), but
you DO have a Microsoft OS below it all, so that:
    -- your machine's overall performance is inferior with [A]
        while [B] does a rather better job at it,
    -- but, [A] presumably support any sort of funky hardware
        you may throw at it, while [B] can't really support
        certain HW pieces whose manufacturers refuse to release
        correct and detailed specs (e.g., Conexant HCF winmodems:
        apparently no way to run them on Linux -- not really a
        technical issue, Lucent supports *its* winmodems well
        on Linux it seems, more, I guess, an issue of how much
        a HW manufacturer wants to stay on good terms with MS by
        boycotting Linux vs how much it wants Linux business:-).
[B] gives you a wider variety of applications developed for Unix
and Unix-like boxes (most have been ported to Windows/Cygwin,
most others are easy to setup and make, but not all), [A] gives
you a wider variety of applications developed for Windows of
some sort (but with limits -- NET.SDK not supported on Win98,
some games don't run on Win2000, etc -- NOT due to Cygwin:-).

[B] is far more solid and stable, particularly if the MS OS
you have under [A] is Win95/98/ME (I have no experience of XP
yet; NT4 and 2000 are less flaky, but still weird out somewhat
too often for my liking).

So, anyway, both configurations are quite viable and useful
in different circumstances.  And in each case you get to choose
whether to use Microsoft compilers (yes they do run fine under
win4lin) or GNU ones (there's mingw32 as well as cygwin, but I
have little recent experience with the former).  Your choice!

> slow and unclear.  Anybody knows the location ?  There should be a link on
> Python download page too, near the source distibution maybe.  I did try to
> the microsoft support at their website but uhm....well see for yourself :)

I see the location question has been answered, but I'd like to
go on record against giving any suggestions to
people about downloading a 120MB blob that's beta-level and not
"fully supported" (whatever that may mean for a beta) except under
Win/2000.  Rather, one appropriate link, IMHO, *WOULD* be to the
Cygwin pages, since the full Cygwin download DOES include the
latest released Python (2.1.1).


More information about the Python-list mailing list