Magnus Lycka wrote: > robert wrote: >> When one follows .. >> http://docs.python.org/inst/tweak-flags.html#SECTION000622000000000000000 >> http://www.zope.org/Members/als/tips/win32_mingw_modules >> >> ..this seems only to cover the immediate python dll issues. What happens >> with the C runtime libraries? You'll bind 2 different C-RTLs (DLLs) >> etc.? And what happens for example with heap objects created with one >> C-RTL and deleted/free'd with the other? > > As far as I understand, there should be only one runtime library > involved. MinGW relies on the Microsoft runtime. It seems some > people have had problems using MSVCRT71 with MinGW, but I'm sure > that e.g. the Enthought people can explain those issues, since they > bundle MinGW in their Python 2.4 distribution.
No, there are two if you use an unmodified Mingw distribution. Mingw is built around MSVCRT.dll . For many extensions, this doesn't cause a problem since things like FILE pointer don't cross C runtime boundaries. One can edit gcc's spec file to make it use MSVCR71.dll . However, Mingw's headers are still written for MSVCRT.dll and Microsoft changed some of the internal details that they rely upon. For many (most?) extensions, this won't matter, either. C++ extensions using iostreams have a problem, IIRC. Unfortunately, neither approach works for all extensions. It may even be the case that some extensions won't work under *either* method. -- 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