El blog de Javielinux Usuario de Linux, Android developer, programador de aplicaciones web y experimentando con HTML5, CSS3 y Javascript

Ejecutable para PySprites en Windows y explicación de como se crea un ejecutable con py2exe y PyGTK

Pues eso PySprites ya tiene ejecutable para Windows. Así ya no hay que instalar Python, ni PyGTK ni nada de eso, sólo las librerías GTK+2.0 y todo irá bien. Está todo muy bien explicado ;-) en la web de PySprites.

He tenido bastantes problemas para poder crear el ejecutable y a continuación explico como lo he hecho por si a alguien le sirve.

Partimos de la base que hemos realizado un programa en Python (muy bonito él) usando PyGTK y GLADE y que funciona correctamente (esto es muy importante). Todo con Gtk2.0. Lo primero nos bajamos Py2exe y lo instalamos. Para crear un ejecutable tenemos que crear un archivo "setup.py". Este contiene lo siguiente:

from distutils.core import setup
import pygtk
pygtk.require("2.0")
import py2exe
import glob
setup(
	name="pysprites",
	windows=["pysprites.py"],
	data_files=[
	 ("glade", glob.glob("glade/*.*"))]
)
			
Cambia los datos con los datos de tu programa. Es muy importante poner "import pygtk" y "pygtk.require("2.0")". Fijaros como tengo los archivos .glade en el directorio glade. Lo siguiente es comentar de nuestro programa "pygtk.require("2.0")" que por alguna oscura razón si se pone no funciona. Ahora nos vamos a la línea de comandos al directorio donde tenemos nuestro programa y ponemos:

python setup.py py2exe

Esto generará dos directorios: "dist" y "build". En el directorio "dist" tenemos nuestro ejecutable que debería de funcionar con todas las dll y demás. Esto debería de funcionar, pero a mi no me funcionaba. Si este es tu caso sigue leyendo.

Ahora tenemos que borrar todas las dlls menos: "libglade-2.0-0.dll", "libxml2.dll" (en el caso que trabajes con XML) y por supuesto "python24.dll". Elimina las demás. De esta forma windows no utilizará estas dlls y utilizará las del sistema que si no las tienes instaladas, a que esperas, las instalas. Si tienes Gimp instalado no hace falta

Entra en la Wed de Gimp para Windows, y te bajas la versión estable de GTK+ 2 for Windows (la última en el momento de escribir esto era la 2.6.9). La instalas y debería de funcionar. Pero esto no es el final, jejeje, que te esperabas.

Puede ser que cuando ejecutes el programa te de un error como este:

"file shape.c: line 75 .... ta ta ta ...."

Si es así, tienes que reinstalar las librerías de "GTK+ 2 for Windows" y cuando te pregunte que quieres instalar dile que no instale "Gimp-Wimp".

Me gustaría que la vida fuese más sencilla, pero esto es lo que he tenido que hacer para poder crear el ejecutable. Lo mejor es que cuando se lo pases a alguien solo tiene que tener en cuenta de tener instalado "GTK+ 2 for Windows" sin "Gimp-Wimp" y voilá.....

Por cierto ya han activado la Web http://sdl-animation.software-libre.org/ con SDL_Animation 0.3
Categorías Programación

Comentarios

german dice:
Hola paisano. Ando aprendiendo python desde hace un tiempo y siempre había trabajado bajo Ubuntu. Ahora, que intento pasarme a windows tuve un pequeño problemilla al intentar hacer ejecutables de mis aplicaciones con py2exe. Al hacer

from distutils.core import setup

me da un error de que no existe ningun modulo core dentro de distutils y no se donde está el problema. Yo intento empaquetar una aplicación hecha con python 2.6.4 y wxPython (ambos instalados y funcionando). Si supieras algo al respecto y pudieras ayudarme te lo agradecería mucho.

Un saludo y sigue así, que te sigo hace un tiempo y veo que no dejas de avanzar.
javielinux dice:
Me parece que no te voy a poder ayudar. Esto lo hace bastante tiempo y ahora no tengo lo que debería tener instalado para probarlo

Espero puedas encontrar algún sitio donde te ayuden mejor que yo.

Lo siento :-(

Escribir un comentario