Platform is Windows 7 64bit using python 2.7 and GTK3 installed from http://games.2g2s.de/?page_id=223 and PyGobject from here http://sourceforge.net/projects/pygobjectwin32/files/?source=navbar
I used the script provided on wiki https://wiki.gnome.org/Projects/PyGObject#Building_on_Win32_with_cx_freeze
from cx_Freeze import setup, Executable import os, site, sys ## Get the site-package folder, not everybody will install ## Python into C:\PythonXX site_dir = site.getsitepackages()[1] include_dll_path = os.path.join(site_dir, "gtk") ## Collect the list of missing dll when cx_freeze builds the app missing_dll = ['libgtk-3-0.dll', 'libgdk-3-0.dll', 'libatk-1.0-0.dll', 'libcairo-2.dll', 'libcairo-gobject-2.dll', 'libgdk_pixbuf-2.0-0.dll', 'libpango-1.0-0.dll', 'libpangocairo-1.0-0.dll', 'libpangoft2-1.0-0.dll', 'libpangowin32-1.0-0.dll', 'libffi-6.dll', 'libfontconfig-1.dll', 'libfreetype-6.dll', 'libgio-2.0-0.dll', 'libglib-2.0-0.dll', 'libgmodule-2.0-0.dll', 'libgobject-2.0-0.dll', 'libpng15-15.dll', ] ## We also need to add the glade folder, cx_freeze will walk ## into it and copy all the necessary files glade_folder = 'glade' ## We need to add all the libraries too (for themes, etc..) gtk_libs = ['etc', 'lib', 'share'] ## Create the list of includes as cx_freeze likes include_files = [] for dll in missing_dll: include_files.append((os.path.join(include_dll_path, dll), dll)) ## Let's add glade folder and files include_files.append((glade_folder, glade_folder)) ## Let's add gtk libraries folders and files for lib in gtk_libs: include_files.append((os.path.join(include_dll_path, lib), lib)) base = None ## Lets not open the console while running the app if sys.platform == "win32": base = "Win32GUI" executables = [ Executable("materii.py", base=base ) ] buildOptions = dict( compressed = False, includes = ["gi"], packages = ["gi"], include_files = include_files ) setup( name = "test_gtk3_app", author = "Gian Mario Tagliaretti", version = "1.0", description = "GTK 3 test", options = dict(build_exe = buildOptions), executables = executables )
Traceback (most recent call last): File "C:\Python27\lib\site-packages\cx_Freeze\initscripts\Console.py", in <module> exec code in m.__dict__ File "materii.py", line 2, in <module> File "C:\Python27\lib\site-packages\gi\__init__.py", line 27, in <module> from ._gi import _API File "ExtensionLoader_gi__gi.py", line 22, in <module> File "ExtensionLoader_gi__gi.py", line 14, in __bootstrap__ ImportError: DLL load failed: The specified module could not be found.
from gi.repository import Gtk
Can you help me please?