Python 2.6 and wrapping C libraries on Windows

L. Lindstrom spam-trap at telus.net
Wed Apr 30 14:06:30 EDT 2008


I have read that Python extension modules must link to the same C 
run-time as the Python interpreter. This I can appreciate. But does this 
requirement extend to the C libraries an extension module wraps. The 
case in point is Pygame and SDL. The Pygame extension modules are built 
with distutils, so for Python 2.6 using Visual Studio 2008 should ensure 
the .pyd files link to msvcr90.dll. But SDL is built using Msys/MinGW 
and the configure/make tool chain. This fails when linking to 
msvcr90.dll since the small test programs configure builds lack manifest 
files. They fail to load msvcr90.dll, raising an R6034 error instead. So 
besides heap management and FILE pointers, is there any reason SDL, or 
any C dependency, needs to link to the same C run-time as Python? If I 
ensure SDL frees memory it allocates and does not directly access a file 
opened by Python can I just use another C run-time such as msvcrt?


-- 
Lenard Lindstrom
"%s@%s.%s" % ('len-l', 'telus', 'net')



More information about the Python-list mailing list