【发布时间】:2016-10-03 07:15:51
【问题描述】:
我正在尝试遵循 swig 教程,但我卡住了,现在我正在使用:
- Win32 上的 Python 3.5.1(v3.5.1:37a07cee5969,2015 年 12 月 6 日,01:54:25)[MSC v.1900 64 位 (AMD64)]
- Vs2015 x64,Microsoft (R) C/C++ 优化编译器版本 19.00.23918 for x64
- SWIG 版本 3.0.10
内容是:
example.c
#include <time.h>
double My_variable = 3.0;
int fact(int n) {
if (n <= 1) return 1;
else return n*fact(n-1);
}
int my_mod(int x, int y) {
return (x%y);
}
char *get_time()
{
time_t ltime;
time(<ime);
return ctime(<ime);
}
example.i
%module example
%{
/* Put header files here or function declarations like below */
extern double My_variable;
extern int fact(int n);
extern int my_mod(int x, int y);
extern char *get_time();
%}
extern double My_variable;
extern int fact(int n);
extern int my_mod(int x, int y);
extern char *get_time();
然后我做:
swig -python example.icl /D_USRDLL /D_WINDLL example.c example_wrap.c -Ic:\Python351\include /link /DLL /out:example.pyd /libpath:c:\python351\libs python35.lib
但是当我尝试python -c "import example" 我得到:
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: dynamic module does not define module export function (PyInit_example)
问题,这是怎么回事,我该如何解决?
【问题讨论】:
标签: python c++ windows visual-studio-2015 swig