versuche ein paar c-funktionen mit hilfe von swig über python zu benutzen. dazu nutze ich visual studio.net2003.
es wird eine dll_project_wrap.c angelegt, die ich in mein project einbinde und auch eine _dll_project.dll wird generiert. aber immer wenn ich versuche die ebenfalls erzeugte datei dll_project.py über import per commandozeile aufzurufen, kommt:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "dll_project.py", line 5, in ?
import _dll_project
ImportError: dynamic module does not define init function (init_dll_project)
wo muss diese init-funktion definiert werden? im c-code oder in der interface-datei (in beiden). ich find nirgends einen hinweis darauf. hab schon versucht einfach eine funktion umzubenennen, aber ohne erfolg. hoffe es kennt einer die lösung!!!!
danke und gruß
alex
Hier der c code
Code: Alles auswählen
/* File : dll_project.c */
double My_variable = 3.0;
/* Compute factorial of n */
int fact(int n) {
if (n <= 1) return 1;
else return n*fact(n-1);
}
/* Compute n mod m */
int my_mod(int n, int m) {
return(n % m);
}
Code: Alles auswählen
/* File : dll_project.i */
%module dll_project
%{
/* Put headers and other declarations here */
%}
extern double My_variable;
extern int fact(int);
extern int my_mod(int n, int m);