Passing a FILE* from Python into a MinGW/SWIG module

John Pye john.pye at gmail.com
Wed Mar 14 06:57:43 EDT 2007


Hi all

I understand that I can't hope to pass a FILE* from the Windows
version of Python into a SWIG module that I've built using MinGW gcc/g+
+, because apparently the FILE* structure are different and
incompatible.

Is there an official workaround for this? Presumably I need to
implement a mingw-compatible version of all the 'file' class in
Python, eg

import mingw
import myswigmodule

F1 = mingw.file("newfile.txt","rw")
F1.write("somestuff")
F1.seek(0)
F2 = mingw.tmpfile()
myswigmodule.dosomething(F1,F2)
F2.seek(0)
print F2.read()

Has anyone done this? Is there a better way that doesn't require users
of my module to adapt? Do I have to use the dreaded MSVS to compile my
SWIG module?

Cheers
JP




More information about the Python-list mailing list