[pyar] Fw: Fw: Fw: Biometrica para Python

Joaquin Sorianello soriasoft en gmail.com
Vie Jul 23 20:01:05 ART 2010


2010/7/23 Alejandro Santos <listas en alejolp.com>:
> On 22/07/10 13:47, Luis A. Garcia wrote:
>>
>> Despues de ver un poco las dos opciones voy a intentar hacerlo con SWIG,
>> ya lo instale y empece a probar con un ejemplo simple en c, como estoy
>> trabajando en Windows uso SWIGWIN, todo bien hasta logre generar el
>> (ejemplo_wrap.c), mi problema empieza cuando tengo que conectarlo con
>> Python, perdonen mi ignorancia, (como dice Borges) pero se que esto hay
>> que compilarlo para que pueda generar los (.pyd,dll) y demas que pueda
>> importar desde python este modulo en C , alguien sabe como hacerlo,
>> nunca he compilado un programa en C, todo lo que encontrado googleando
>> es para Linux y Unix.
>>
>
> Hace rato que no hago nada de eso y no tengo un win con un compilador a
> mano, ultimamente ando con Linux. Espero poder guiarte, la idea es mas o
> menos así:
>
> 1. Necesitás un compilador de C. Supongo que Dev-C++ deberia alcanzar,
> sino tenés Microsoft Visual C++ Express Edition, que es gratuito, pero
> mucho más pesado de instalar y hacer andar.
>
> 2. Una vez que tengas el compilador y el IDE necesitás crear un nuevo
> proyecto. Tiene que ser del tipo: "Dynamic DLL" o similar, depende del
> compilador e IDE se hace de diferente forma. Capaz tengas que elegir la
> que dice "Threaded", no me acuerdo como es eso.
>
> 3. En tu nuevo proyecto agregás todos los ".c" que el SWIG genere.
>
> 4. En las propiedades del proyecto tenes que configurar:
>
> a) En la parte de compilacion las rutas de headers de Python y SWIG:
>
>   C:\Python26\include
>
> No se cuales son los include que el SWIG necesita.
>
> b) En la parte de linker tenes que agregar las rutas de las dependencias
> de linkeo, esto esta en:
>
>   C:\Python26\libs
>
> c) En la parte de librerias tenes que agregar la libreria de Python:
>
>   C:\Python26\libs\libpython26.a
>
> 5. Le das compilar y cruzás los dedos :P
>
> 6. A la DLL compilada le cambias el nombre a:
>
>   _tumodulo.pyd
>
> Copiás ese archivo .pyd a tu proyecto, junto con el archivo
> "tumodulo.py" que te genere SWIG. Luego abris un interprete de prueba y
> haces:
>
>   import tumodulo
>
> La mano viene por ese lado, aunque capaz me faltó algún paso.

Si el procedimiento es correcto, creo que le podemos hacer un lugar en:

http://python.org.ar/pyar/Recetario/SwigEnWindows

:P

Haga patria, pueble el Wiki
-- 
Joaquín Sorianello

Sea libre, use software libre



More information about the pyar mailing list