Python Gtk3 ejecutable

Comencé a usar Gtk3 con Python. Tengo una pregunta: ¿cómo puedo crear un archivo ejecutable de Windows desde mi fuente gtk3 python usando pyinstaller, cx_freeze o py2exe? Probé muchas respuestas de desbordamiento de stack y muchas otras páginas web, pero ninguna funcionó. Traté de hacerlo con pyinstaller (creo que podría ser la forma más fácil) y mi código fuente se ve así:

import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk class ButtonWindow(Gtk.Window): def __init__(self): Gtk.Window.__init__(self, title="Button Demo") self.set_border_width(10) hbox = Gtk.Box(spacing=6) self.add(hbox) button = Gtk.Button.new_with_label("Click Me") button.connect("clicked", self.on_click_me_clicked) hbox.pack_start(button, True, True, 0) button = Gtk.Button.new_with_mnemonic("_Open") button.connect("clicked", self.on_open_clicked) hbox.pack_start(button, True, True, 0) button = Gtk.Button.new_with_mnemonic("_Close") button.connect("clicked", self.on_close_clicked) hbox.pack_start(button, True, True, 0) def on_click_me_clicked(self, button): print("\"Click me\" button was clicked") def on_open_clicked(self, button): print("\"Open\" button was clicked") def on_close_clicked(self, button): print("Closing application") Gtk.main_quit() win = ButtonWindow() win.connect("delete-event", Gtk.main_quit) win.show_all() Gtk.main() 

pero me sale el siguiente error:

 Traceback (most recent call last): File "", line 2, in  File "c:\python34\lib\gi\__init__.py", line 102, in require_version raise ValueError('Namespace %s not available' % namespace) ValueError: Namespace Gtk not available gtk returned -1 

¿Qué debo hacer con esto o puedes explicarme cómo hacer un ejecutable en py2exe o cx_freeze? ¡Por favor, ayúdame! ¡Gracias!

Instalar cx_Freeze

Solo deberías poder hacer pip install cx_Freeze en windows. O puedes ir al sitio web oficial http://cx-freeze.sourceforge.net/


Cree un archivo setup.py en la misma carpeta que su progtwig.

setup.py:

 import cx_Freeze executables = [cx_Freeze.Executable("file.py")] cx_Freeze.setup( name="WhatEverYouWantToNameIt", options={"build_exe": {"packages":["gi"]}}, executables = executables ) 

Abra el símbolo del sistema en la ubicación del archivo de su progtwig. En Windows, solo deberías shift + left-click la carpeta y hacer clic en abrir ventana de comandos aquí Una vez que se abre, escriba python setup.py build . Si recibe un error que indica que Python no está en su ruta, indique la ruta completa. Por ejemplo, en Windows, con Python 3.4, harías:

 C:/Python34/python setup.py build 

Si estás en un mac, entonces harías:

 python setup.py bdist_dmg 

Una vez hecho esto vuelve y dime si funciona. Si no funciona, solo dame el mensaje de error y solucionaré el problema. ¡Buena suerte!