On 2010-04-16 07:30 AM, Brian Blais wrote:
On Apr 12, 2010, at 16:36 , Martin v. Loewis wrote:

If you are planning to build Python extension modules in the next five
years, I recommend that you obtain a copy of VS Express

Am I missing something here? I have heard this before, but I have built
extension modules many times under windows (using Cython) and never once
used a MS product. I've just had to change a distutils config file to
use a different compiler (mingw32, directions here:
http://docs.cython.org/src/tutorial/appendix.html). It seems to work
fine. What is the basis of this claim that you need MS Visual Studio to
do it?

Most extensions will work okay when compiled with mingw32. However, mingw32 is still based on MSVCRT6.dll as its C runtime. You would get errors whenever a FILE* pointer crosses over the boundary. distutils will tell it to link with the CRT that Python is currently built with, but some of the headers aren't up to date for that CRT, so some C++ extensions will not work (a command C++ operation triggers a table lookup in a static table defined in the CRT, but it differs in size between versions).

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
 that is made terrible by our own mad attempt to interpret it as though it had
 an underlying truth."
  -- Umberto Eco

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to