Seite 1 von 2

Python & GTK+ & Eclipse

Verfasst: Montag 11. Mai 2009, 19:55
von ampere
Hallo Python Freunde,

ich muss mich in naher Zukunft beruflich mit Python, GTK & Glade beschäftigen.
Nun wollte ich das letztes Wochenende Zuhause schon mal ausprobieren, bin dabei aber fürchterlich auf die Schnauze gefallen!

Ich habe 2 1/2!!! Tage vergeblich versucht eclipse mit Python und GTK+ zum Laufen zu bringen.
Ich hab’s weder auf Windows noch auf Linux geschafft :(

Hat von Euch zufällig jemand diese Konfiguration am laufen und kann wir dazu etwas Hilfestellung leisten?

vielen Dank...

Verfasst: Montag 11. Mai 2009, 19:58
von nemomuk
Wenn du dein Problem schildern würdest, kann man dir sicher helfen...

Verfasst: Montag 11. Mai 2009, 20:24
von derdon
  • Python installieren
  • Eclipse installieren
  • GTK+ installieren
  • PyGTK installieren
  • Glade installieren
An welchem Punkt scheiterst du?

Installation

Verfasst: Montag 11. Mai 2009, 20:49
von ampere
1. Java Version 6 Update 13 installiert (nur für Eclipse)
Quelle = hatte ich schon

2. Eclipse IDE for Java Developers (85MB) installiert
Wuelle = http://www.eclipse.org/downloads/

3. Python 2.6.2 installiert
Quelle = http://www.python.org/download/

3. GTK+ nach C:\GTK kopiert und C:\GTK\bin zur Path Variable hinzugefügt. Dieses Bundle soll angeblich alle benötigten Elemente enthalten
Quelle = http://www.gtk.org/download-windows.html (bundle)

4. PyDev ins Eclipse Verzeichnis kopiert (Eclipse Python plugin)
Ouelle = http://sourceforge.net/project/showfile ... _id=675382

5. PyGTK 2.12.1 installiert
Quelle = http://www.pygtk.org/downloads.html

6. Windows neu gestartet

Zum Testen habe ich folgendes Programm:
#!/usr/bin/python
# -*- coding: utf-8 -*-

import pygtk
pygtk.require('2.0')
import gtk

class mainClass:
def __init__(self):
# Erzeugt das Fenster
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
# Setzt den Seitentitel, der ganz oben da.
self.window.set_title("Hallo-Kn�pfe!")
# Registriert die Funktion delete_event auf das delete_event, um das Fenster sofort zu schliessen (Keine R�ckantwort und so)
self.window.connect("delete_event", self.delete_event)
# Erstellt eine Vertikale Box
vbox1 = gtk.VBox(False, 0)
self.window.add(vbox1)
# Nummero 3: Schliessen
button3 = gtk.Button("Schliessen")
vbox1.pack_start(button3, False, False, 10)
# Event registrieren
button3.connect("clicked", lambda w: gtk.main_quit())
# BUtton anzeigen
button3.show()

# Widgets anzeigen
vbox1.show()
self.window.show() # Zeigt das Fenster an.

def delete_event(self, widget, event, data = None):
gtk.main_quit()
return False

def main():
gtk.main();
return 0

if __name__ == "__main__":
mainClass = mainClass()
main()

Wenn ich mein Testprogramm starten will, dann bekomme ich folgende Meldung:

Traceback (most recent call last):
File "C:\Dokumente und Einstellungen\Benutzer1\workspace\Test_001\src\programm.py", line 4, in <module>
import pygtk
ImportError: No module named pygtk

Verfasst: Montag 11. Mai 2009, 21:16
von Leonidas
PyCairo und PyGObject installiert? Wie sieht dein ``sys.path`` aus?

Und unter Linux ist das einfach: ``aptitude install python-gtk2``. Fertig!

Verfasst: Dienstag 12. Mai 2009, 13:14
von EyDu
Vielleicht hast du auch mehrere Python-Versionen bei dir installiert und die mit PyGTK wird nicht gestartet.

Endlich ein kleiner Lichtblick

Verfasst: Dienstag 12. Mai 2009, 18:17
von ampere
Jetzt läufts so halbwegs.

Ich habs jetzt so installiert:

1. Java Runtime Enviroment installieren
2. Eclipse installieren
3. python installieren
4. gtk+ entpacken & ../gtk/bin zur Path Variable hinzufügen
5. Glade installieren
6. pygobject installieren
7. pyCairo installieren
8. pygtk installieren

Damit bekomme ich jetzt mal ein Fenster mit Button hin.

Als nächster Schritt wollte ich ein einfaches Fenster mit Glade erzeugen und das anzeigen. Da hänge ich jetzt noch...

Traceback (most recent call last):
File "C:\Dokumente und Einstellungen\vmware\workspace\Test_002\src\programm.py", line 4, in <module>
import gtk.glade
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.

Woran könnte das liegen?

ähnliches Problem - jedoch ohne Eclipse

Verfasst: Mittwoch 29. Juli 2009, 10:23
von Peets
bin python Anfänger, will es unbedingt lernen, muss auftragsbedingt eine plattformübergreifende Lösung erstellen, möcht mit python - gtk eine einfache gui-Oberfläche für gcc Programme erstellen.

- WinXP, EeePC 1000H (wg. Atom)
- python-2.6.2.msi installiert -> läuft
- gtk+-bundle_2.16.4-20090708_win32.zip in C:\gtk installiert
- Pfad mit C:\gtk\bin erweitert
- glade wGLADE-0.2.exe
in C:\Programme\wGLADE-0.2\wGLADE.exe installiert
- glade info meldet rev. 0.5.11
- gtk/gcc Demoprogramm läuft
- pygtk-2.12.1-3.win32-py2.6.exe installiert
- pygobject-2.14.2-2.win32-py2.6.exe installiert
- pycairo-1.4.12-2.win32-py2.6.exe installiert

- Pfad mit C:\python26 erweitert
- DOS shell gestartet
- python aufgerufen -> startet Python 2.6.2 (r262:71605, Apr 14 2009, 22:40:02)
>>> import gtk

Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import gtk
File "C:\Python26\lib\site-packages\gtk-2.0\gtk\__init__.py", line 38, in <module>
import gobject as _gobject
File "C:\Python26\lib\site-packages\gtk-2.0\gobject\__init__.py", line 30, in <module>
from gobject.constants import *
File "C:\Python26\lib\site-packages\gtk-2.0\gobject\constants.py", line 22, in <module>
from _gobject import type_from_name
ImportError: DLL load failed: Die angegebene Prozedur wurde nicht gefunden.
>>>

import pygtk funktioniert, reicht aber nicht.

Durch langes Herumspielen mit einer älteren Version von gtk/gcc (nicht das bundle) konnte ich das interaktive python demo

import gtk

window = gtk.Window()
window.set_title("PyGTK Test Window")
window.connect("destroy", gtk.main_quit)
window.show_all()

gtk.main()

zum laufen bringen - allerdings war die Anbindung von gcc nicht in Ordnung, die glade Programme liefen nicht.

Zu Versuchen mit glade und python bin ich leider nicht mehr gekommen.

Ein Versuch, den obigen Fehler nachzuvollziehen scheitert an meinen mangelnden python kenntnissen. Welche Datei fehlt? Habe ich falsche Versionen installiert? Eine frühere Installation mit wingtk-0.2.exe und wGLADE-0.2.exe hatte funktioniert, allerdings hat sich das Fenster in obigem Beispiel nicht mehr schließen lassen.

Vielen Dank für Hinweise wie ich das System zum Laufen bringen könnte.

Verfasst: Mittwoch 29. Juli 2009, 11:14
von Leonidas
Komisch, GLADE ist doch schon längst über die Version 3.0 hinaus...

glade, Lösung zu meinem Problem mit gtk

Verfasst: Mittwoch 29. Juli 2009, 11:46
von Peets
an Leonidas:
ja, dachte ich auch, habe aber nix für wind*ws gefunden. Gibts da schon was neueres? wäre sehr hilfreich - danke für den Hinweis.

Lösung meines Problems:
Es waren mindestens zwei gtk versionen installiert (kein gimp war inst.)
- habe alle bisher installierten gtk gelöscht:
- erst mit uninstall soweit eines vorhanden war
- dann die noch übrig gebliebenen Verzeichnisse
- (!) dann noch gtk libraries in \windows\system32,
die mit Namen wie libg*.dll versehen sind,
zusätzlich scheint ein libintl-1.dll auch dazuzugehören
und vermutlich ein weiteres dll, dessen Name mir leider entwischt ist
system32 steht früher im Pfad und deshalb wurden die alten
libraries trotz deinstallation und Löschen der gtk-Verzeichnisse
immer noch verwendet
- Aus der path variablen alle gtk pfade gelöscht, c:\python26 blieb drin
(Systemeigenschaften-Erweiteret-Umgebungsvariablen-Path;
wenn man wieder bis zurm Fenster "Systemeigenschaften" zurückgeht
braucht man nicht neu starten)

habe dann von
http://gtk-win.sourceforge.net/home/ind ... /Downloads
das Paket
gtk2-runtime-2.16.4-2009-07-08-ash.exe
geladen und installiert;

Dann das "Eingabeaufforderung" Fenster geschlossen (!) und wieder neu geöffnet - worduch die path variable auf den neu eingestellten Wert übernommen wird (sonst bleibt der alte)

python gestartet - import gtk funktioniert; das Demo
import gtk

window = gtk.Window()
window.set_title("PyGTK Test Window")
window.connect("destroy", gtk.main_quit)
window.show_all()

gtk.main()
von der Seite
http://faq.pygtk.org/index.py?req=show& ... 21.001.htp
ebenfalls.

Häufig fehlen bei Foren die endgültigen Lösungen. Daher dieser Abschluss als Hilfe für andere. Hoffe ich nerve damit nicht zu sehr.

Re: glade, Lösung zu meinem Problem mit gtk

Verfasst: Mittwoch 29. Juli 2009, 15:58
von Leonidas
Peets hat geschrieben:an Leonidas:
ja, dachte ich auch, habe aber nix für wind*ws gefunden. Gibts da schon was neueres? wäre sehr hilfreich - danke für den Hinweis.
Ja, Glade-Homepage -> Windows Binaries. Und dann die Version aussuchen die du haben willst.

Re: Python & GTK+ & Eclipse

Verfasst: Montag 13. Mai 2013, 16:56
von ChrisGTJ
Hallo zusammen,

ich exhumiere diesen Faden mal...

Ich habe gerade frisch Python 2.7 installiert (python-2.7.4.msi), dann gtk (gtk+-bundle_2.24.10-20120208_win32.zip) und zum Schluß das passende pygtk-Paket (pygtk-2.24.0.win32-py2.7.msi) draufgepackt.

Gtk habe ich konfigiriert und die Beispielanwendung gtk-demo.exe läuft.
Python läuft ebenfalls.
Nur pygtk will nicht:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Dokumente und Einstellungen\Chris>python
Python 2.7.4 (default, Apr 6 2013, 19:54:46) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import gtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named gtk
>>>
Weiß jemand, was ich zu tun vergessen habe?

Gruß und Danke,

Christoph

Re: Python & GTK+ & Eclipse

Verfasst: Dienstag 14. Mai 2013, 00:09
von Leonidas
Mach mal ein

Code: Alles auswählen

import sys
print sys.path
Und schau ob in einem der Pfade der PyGTK-Ordner zu finden ist.

Re: Python & GTK+ & Eclipse

Verfasst: Dienstag 14. Mai 2013, 07:51
von ChrisGTJ
Hallo Leonidas,

danke für die Antwort, das war der erste Schritt :) Nachdem ich analog zu wx die Datei "gtk.pth" mit entsprechendem Inhalt hinzugefügt habe, bekomme ich nun folgenden Fehler:
C:\Dokumente und Einstellungen\Chris>python
Python 2.7.4 (default, Apr 6 2013, 19:54:46) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', 'C:\\WINDOWS\\system32\\python27.zip', 'D:\\tools\\Python27\\DLLs', 'D:\\tools\\Python27\\lib', 'D:\\tools\\Python2
7\\lib\\plat-win', 'D:\\tools\\Python27\\lib\\lib-tk', 'D:\\tools\\Python27', 'D:\\tools\\Python27\\lib\\site-packages',
'D:\\tools\\Python27\\lib\\site-packages\\gtk-2.0', 'D:\\tools\\Python27\\lib\\site-packages\\wx-2.8-msw-unicode']
>>> import gtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "D:\tools\Python27\lib\site-packages\gtk-2.0\gtk\__init__.py", line 30, in <module>
import gobject as _gobject
ImportError: No module named gobject
>>>
Es sieht so aus, als würde doch noch was fehlen. Bei den Einzelpaketen (Cairo, ...) ist ja auch ein "pygobject-2.28.3.win32-py2.7.exe" dabei. Muß das auch installiert werden?

Gruß und Danke,

Christoph

Re: Python & GTK+ & Eclipse

Verfasst: Dienstag 14. Mai 2013, 07:56
von ChrisGTJ
... und nachdem ich das einfach mal installiert habe, komme ich zu folgendem, altbekannten Fehler:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Dokumente und Einstellungen\luxnote>python
Python 2.7.4 (default, Apr 6 2013, 19:54:46) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', 'C:\\WINDOWS\\system32\\python27.zip', 'D:\\tools\\Python27\\DLLs', 'D:\\tools\\Python27\\lib', 'D:\\tools\\Python2
7\\lib\\plat-win', 'D:\\tools\\Python27\\lib\\lib-tk', 'D:\\tools\\Python27', 'D:\\tools\\Python27\\lib\\site-packages',
'D:\\tools\\Python27\\lib\\site-packages\\gtk-2.0', 'D:\\tools\\Python27\\lib\\site-packages\\wx-2.8-msw-unicode']
>>> import gtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "D:\tools\Python27\lib\site-packages\gtk-2.0\gtk\__init__.py", line 40, in <module>
from gtk import _gtk
ImportError: DLL load failed: Die angegebene Prozedur wurde nicht gefunden.
>>>
Und nun?

Ich habe im Faden weiter oben folgendes gelesen:
habe dann von
http://gtk-win.sourceforge.net/home/ind ... /Downloads
das Paket
gtk2-runtime-2.16.4-2009-07-08-ash.exe
geladen und installiert;
Ist das im gtk bundle enthalten oder muß ich das noch machen? Die standalone gtk Demo funktioniert bei mir ja.

Gruß,

Christoph

Re: Python & GTK+ & Eclipse

Verfasst: Dienstag 14. Mai 2013, 11:00
von Leonidas
Sieht aus als ob der die DLL nicht finden würde, weiß nicht wie das unter Windows ist, das nutze ich seit Jahren nicht mehr, vielleicht mal den Pfad mit den GTK+-DLLs in ``%PATH%`` hinzufügen?

Re: Python & GTK+ & Eclipse

Verfasst: Dienstag 14. Mai 2013, 18:56
von ChrisGTJ
Der Pfad ist im PATH enthalten.

Ich habe gerade folgenden Faden gerunden:

http://www.python-forum.de/viewtopic.php?p=47916

Da geht es um die gleiche Problematik und keine Lösung wurde gefunden. Sieht so aus, als wäre es eines von diesen Problemen, die manche Leute haben, viele nicht und für die es keine Lösung gibt. :K Sieht so aus, als ob gtk+ nichts für mich ist...

Gruß,

Christoph

Re: Python & GTK+ & Eclipse

Verfasst: Dienstag 14. Mai 2013, 22:20
von Leonidas
Ich finde es eh am besten auf Windows zu entwickeln wenn man sich ne VM installiert und dort ein Linux betreibt. Dann funktioniert alles völlig unproblematisch.

Re: Python & GTK+ & Eclipse

Verfasst: Mittwoch 15. Mai 2013, 11:25
von ChrisGTJ
Leonidas hat geschrieben:Ich finde es eh am besten auf Windows zu entwickeln wenn man sich ne VM installiert und dort ein Linux betreibt. Dann funktioniert alles völlig unproblematisch.
:wink: Trotzdem finde ich es ziehmlich mau, daß dieses Problem nun schon seit mehr als 5 Jahren besteht. Kann natürlich sein, daß es auch auf die Akzeptanz von GTK in Windows-Kreisen hindeutet. Ich werde dann wohl wx nehmen müssen.

Trotzdem Danke für Deine Hilfe!

Christoph

Re: Python & GTK+ & Eclipse

Verfasst: Mittwoch 15. Mai 2013, 17:56
von Leonidas
An deiner Stelle würde ich lieber Qt nehmen. wx ist irgendwie so semi-tot.