Hi Tim, Malcom, anybody else around,
That's not quite true... it's not a big deal to compile python-
extensions on Windows with gcc (mingw or cygwin).
Explained in detail in the python manual, Section 6.2.2
No offense, but unless cygwin has really moved up in the world it really doesn't work/integrate very well with Windows. Been there, done that. If I want to use gcc, I go to my Linux box. If I want object code on Windows, I fire up my copy of either the Microsoft or Borland compilers.
I don't mean to flame now, sorry, but this toolkit is _not_ free
and distribution of anything built by it is extremely limited.
I read this first in an announcement on this give-away and taking a
look into the "eula" now it holds true:
Microsoft Learn: Build skills that open doors in your career ->
See Sections 3.1 (ii): Only Windows Platforms.
(Well sure, not a big deal, mono and wine might be affected here
but I'm not sure wether porting the software to another platform,
redistributing with a different compiler is touched by this too).
Most important 3.2, that one deals with how you are and are not
allowed to license your software distribution built with this
toolkit:
"""An "Excluded License" [forbidden] is any license which requires
as a condition of use, modification and/or distribution of software
subject to the Excluded License, that such software or other
software combined and/or distributed with such software (x) be
disclosed or distributed in source code form;
(y) be licensed for the purpose of making derivative works; or (z)
be redistributable at no charge."""
Sorry for this mind-boggling reader.
BTW: how many "software" do you count in the above sentence?
The direction here is quite clear...
(what strikes me a bit though is, that it's even forbidden to build
closed-source freeware with this, ->(z))
Anyway it's always good to have some compilers lying around to
tinker with so I wouldn't mind too much to get that one just for
the fun of it. But I would never even start thinking about to do
any serious work with this toy while there are other, much nicer
ones around.
-Björn
I'm no lawyer but I think you are misreading the definitions in that document. "Redistributable Code" in those sections refers to Section 2.2. That section says to go read the "REDIST.TXT" file included in the install. REDIST.TXT contains only this text (which I've marked in Pythonic style):
"""There are no redistributable files (i.e., dll's/cab's, etc.) included with the Visual C++ Toolkit 2003. Object library files included with the Visual C++ Toolkit 2003 (e.g. the C Runtime Library static libraries designated with the suffix ".lib") will be automatically linked to your program when they are compiled by the Visual C++ compiler and linker. Inclusion of these static libraries as compiled into your program is acceptable; you may not, however, redistribute the static libraries standalone - on their own."""
As you can see, I think you might be getting your dander up over nothing. Basically using the statically linked libraries does not fall under the Section 2.2 and 3.x clauses. Therefore I CAN compile an app under Windows using the Visual C++ Toolkit and market it under the GNU or BSD licenses. What I can't do is go grab the MSVCR70.DLL (the Visual C++ 7.0 runtime DLL) and toss it into my distribution over on SourceForge. I either statically link the C library or I have to tell my users how to acquire the C runtime DLL.
I'm pro open-source and not too kind to Microsoft. However, I think in this instance, the bad boys from Redmond have offered up a free C++ compiler (along with static libs). Really, from a professional standpoint Microsoft doesn't charge that much for their tools over all. A MSDN Universal Subscription(darn near every Microsoft package for one developer) is only ~$2k per year (much less if you are site licensed). Relative to the cost of my time to my employer, the toolset is the least of our problems.
I think one could use the free compiler to build Python (barring any missing libs). Someone mentioned that the free version has no optimization available. My guess is that would make it roughly the same speed executables as gcc which has had very weak optimization ability (that may have changed in the last major release). Nothing against the gcc team; My understanding was they had bigger issues to deal with until recently. Neither compiler can touch the very nice Intel compiler optimizations (at least for Intel hardware).
On a different note, didn't Watcom or Borland have a free version of their commandline compilers?
Cheers,
Matthew Zaleski
···
On Fri, 08 Oct 2004 02:19:05 +0200, Björn Pfeiffer wrote: