Según el manual:
Citar
The preferred approach to building an extension module is to compile it into a shared object file or DLL. To do this, you need to compile your program using comands like this (shown for Linux):
$ swig -python example.i
$ gcc -c example.c
$ gcc -c example_wrap.c -I/usr/local/include/python2.0
$ gcc -shared example.o example_wrap.o -o _example.so
yo no sé nada de linux, pero los dos primeros son compilar el archivo, supongo. El tercero que es? es que no consigo hacerlo funcionar y creo que esta es la clave :P (por cierto, el .o se refiere a .obj ?)
--thx in advance
$ swig -python example.i
Precompila el fichero example.i y genera example.c
$ gcc -c example.c
Compila example.c y genera example.o
$ gcc -c example_wrap.c -I/usr/local/include/python2.0
Compila example_wrap.c y genera example_wrap.o (la directiva -I indica los directorios en los que se encuentran los .h para los includes)
$ gcc -shared example.o example_wrap.o -o _example.so
Linka example.o y example_wrap.o y genera example.so (la directiva -shared y la extensión .so, shared object, indican que genere una librería dinámica, como las DLLs de Windows pero para Unix)
Y sí, los .o son los .obj.
Espero te sirva.
Saludos
CitarLinka example.o y example_wrap.o y genera example.so (la directiva -shared y la extensión .so, shared object, indican que genere una librería dinámica, como las DLLs de Windows pero para Unix)
hum.. entonces necesita un shared object (.so) de esos, o con una dll o algo servirá? (hablo de Windows) :
:?:
No es que necesite una .so sino que genera una .so.
El equivalente en Windows es generar una DLL.
sí, funciona con dll's, ya funciona, aleluya ! :D
gracias Juan
EDIT: con lo de "necesita" me refería al script, para que funcionara :)