I'm trying to create an extension module using SWIG. I've succeeded in generating a pyd file but when I import the module I get the error message: "SystemError: dynamic module not initialized properly." I added an initfoo() function but that didn't solve the problem. Below are the various files, a slightly modified version of a SWIG exmaple. I'm using Python 2.7
What am I missing? //foo.c: #include "foo.h" double Foo; void initfoo() { Foo = 3.0; } int gcd(int x, int y) { int g; g = y; while (x > 0) { g = x; x = y % x; y = g; } return g; } #foo.h: extern void initfoo(); extern double Foo; extern int gcd(int x, int y); #foo.i: %module example %inline %{ extern int gcd(int x, int y); extern double Foo; %} #setup.py from setuptools import setup, Extension setup(name='foo', version='0.1', ext_modules=[Extension('foo', ['foo.c', 'foo.i'], include_dirs=['.'], depends=['foo.h', 'foo.i'], swig_opts=['-modern', '-I../include'], )], ) -- https://mail.python.org/mailman/listinfo/python-list