nach dem ausführen der .exe fehler mit pango im log?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Freitag 16. Juni 2006, 17:39

hi

ich habe ein winsetup.py erstellt damit ich den sourcecode kompilieren kann unter windows.

Code: Alles auswählen


from distutils.core import setup
import py2exe




setup(
    name='Cryptis',

    options = {"py2exe": {
                            "compressed": 0,
                            "optimize": 2,
                            "excludes": "",
                            "packages" : ["encodings","cjkcodecs"]
                        }},
    windows = [ 
        {
            
            "script": "main.py", 
            "icon_resources": [(1, "c6icon32.png")] 
        } 
    ],
      data_files=[("",["cryptic6.glade", "c6icon16.png", "c6icon32.png", "c6icon64.png", "c6icon128.png"])]


    
    )

nun bruacht mein source diese pakete zum ausführen der gesamten anwendung:
python-2.4.2.msi
Twisted_NoDocs-2.1.0.win32-py2.4.exe
gtk-win32-devel-2.8.8-rc2.exe?download
pysqlite-1.1.6.win32-py2.4.exe
pygtk-2.8.2-1.win32-py2.4.exe
pycrypto-2.0.1.win32-py2.4.zip

nun muss ich mein winsetup.py anpassen?

hier der error log:
ImportError: could not import pango
ImportError: could not import pango
Traceback (most recent call last):
File "main.py", line 21, in ?
File "firstRun.pyo", line 2, in ?
File "gtk\__init__.pyo", line 113, in ?
AttributeError: 'module' object has no attribute 'Font'
habe jede menge an .dll mindestens 20 stück nach dem kompilieren.
ist das normal?
Bild
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Freitag 16. Juni 2006, 17:45

du bist dir sicher, dass der skript so funktioniert und alle module beim interpreter in dem stammverzeichnis (C:\python2x\lib\) liegen?
das ist mein erster gedanke...
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Freitag 16. Juni 2006, 17:52

also ich kann ja via python24 main.py ausführen!

ich wollte eben als .exe kompilieren.
wenn ich meine main.exe ausführe kommt das error log

damit man ohne die 6 pakete geht!

mein build.bat:
c:\programme\python24\python.exe -OO winsetup.py py2exe -p encodings
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Freitag 16. Juni 2006, 19:36

also zuerst versändlich, aber danach nicht mehr:
damit man ohne die 6 pakete geht!
was soll das bedeuten?
wenn die pakete bei dir beim interpreter reininstalliert sind, sollte das gehen.
nur wenn die pakete bei main.py reininstalliert ist, sieht das anders aus.
dann geht das nur, wenn die pakete (fertig installiert) daliegen.
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Samstag 17. Juni 2006, 09:36

ich habe gemeint ihc muss die 6 pakte installieren damit mein main.py
ausführen kann.
und mit einer main.exe wäre ja das alles schon dabei.

wenn nicht jeder hat lust die 6 dinge zu installieren um main.py auszuführen

via main.exe ist es einfacher
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 17. Juni 2006, 11:09

matrixnet hat geschrieben:habe jede menge an .dll mindestens 20 stück nach dem kompilieren.
ist das normal?
Absolut: PyGTK schleppt einiges an DLLs mit, GTK+ selbst auch nochmal.

Guck dir mal die setup.py im Wiki unter [wiki]PyGTK[/wiki] an, dort ist eine includes-Zeile, die pango explizit inkludiert.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Mad-Marty
User
Beiträge: 317
Registriert: Mittwoch 18. Januar 2006, 19:46

Samstag 17. Juni 2006, 17:58

Warum nutzt du kein py2exe ?

Das bundled dir alles zusammen in 1 datei bzw. mehrere.

Dann muss niemand irgendetwas installiert haben
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 17. Juni 2006, 18:54

Mad-Marty hat geschrieben:Warum nutzt du kein py2exe ?
Tut er doch, siehe oben im Thread.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Sonntag 18. Juni 2006, 18:47

also hier mein abeändertes winsetup.py

Code: Alles auswählen

from distutils.core import setup
import py2exe




setup(
    name='Cryptic',

    options = {"py2exe": {
                            "compressed": 0,
                            "optimize": 2,
                            "includes": 'pango,atk,gobject',
                            "dll_excludes": [

        "libgtk-win32-2.0-0.dll","libpango-1.0-0.dll",
        "libpangowin32-1.0-0.dll","libgdk_pixbuf-2.0-0.dll","libpng13.dll",],
                            "packages" : ["encodings","cjkcodecs"]
                        }},
    windows = [ 
        {
            
            "script": "Cryptic6.py", 
            "icon_resources": [(1, "c6icon.ico")] 
        } 
    ],
      data_files=[("",["cryptic6.glade", "c6icon16.png", "c6icon32.png", "c6icon64.png", "c6icon128.png"])]


    
    )
also kann mein main.exe ohne probleme ausführen nun hab ich es auf einem anderen rechner es getestet es geht nicht!
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Sonntag 18. Juni 2006, 18:57

ich ahbs nochmal geändert:

Code: Alles auswählen

from distutils.core import setup
import py2exe




setup(
    name='Cryptic',

    options = {"py2exe": {
                            "compressed": 0,
                            "optimize": 2,
                            "includes": 'pango,atk,gobject',
                            "dll_excludes": [

               'iconv.dll', 'intl.dll', 'libatk-1.0-0.dll',
               'libgdk_pixbuf-2.0-0.dll', 'libgdk-win32-2.0-0.dll',
               'libglib-2.0-0.dll', 'libgmodule-2.0-0.dll',
               'libgobject-2.0-0.dll', 'libgthread-2.0-0.dll',
               'libgtk-win32-2.0-0.dll', 'libpango-1.0-0.dll',
               'libpangowin32-1.0-0.dll'],
                            "packages" : ["encodings","cjkcodecs"]
                        }},
    windows = [ 
        {
            
            "script": "Cryptic6.py", 
            "icon_resources": [(1, "c6icon.ico")] 
        } 
    ],
      data_files=[("",["cryptic6.glade", "c6icon16.png", "c6icon32.png", "c6icon64.png", "c6icon128.png"])]


    
    )
wenn ich die main.exe auf anderem rechner laufen lasse kommt der fehler das libglib-2.0-0.dll nicht gefunden wurde.
wenn ich den da rein kopiere dann sagt es fehlt eben ein anderes .dll. usw.
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Sonntag 18. Juni 2006, 19:15

und was, wenn du 'iconv.dll', 'intl.dll', 'libatk-1.0-0.dll',
'libgdk_pixbuf-2.0-0.dll', 'libgdk-win32-2.0-0.dll',
'libglib-2.0-0.dll', 'libgmodule-2.0-0.dll',
'libgobject-2.0-0.dll', 'libgthread-2.0-0.dll',
'libgtk-win32-2.0-0.dll', 'libpango-1.0-0.dll',
'libpangowin32-1.0-0.dll'
mitlieferst? sprich alle, die du da aufgezählt hast?
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Sonntag 18. Juni 2006, 19:25

das habe ich auch schon probiert.
dann sehe ich im taskmanager das es läuft aber nichts vom gui sehen.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 18. Juni 2006, 20:16

und wenn du in deine ursprüngliche winsetup.py eifach nur die

Code: Alles auswählen

"includes": 'pango,atk,gobject',
Zeile übernimmst?
My god, it's full of CARs! | Leonidasvoice vs Modvoice
matrixnet
User
Beiträge: 35
Registriert: Donnerstag 21. April 2005, 16:45

Montag 19. Juni 2006, 17:31

so nun habe das mit dieser winsetup.py die .exe erstelt

Code: Alles auswählen

from distutils.core import setup
import py2exe




setup(
    name='Cryptic',

    options = {"py2exe": {

                            "includes": 'pango,atk,gobject',
                           
                        }},
    windows = [ 
        {
            
            "script": "Cryptic6.py", 
            "icon_resources": [(1, "c6icon.ico")] 
        } 
    ],
      data_files=[("",["cryptic6.glade", "c6icon16.png", "c6icon32.png", "c6icon64.png", "c6icon128.png"])]


    
    )
das gleiche problem es taucht im taskmanager auf aber vom gui ist nicht zu sehen!
man muss kein gtk installieren aufm anderem system?


Bild
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Montag 19. Juni 2006, 18:14

Noch eine andere Idee: Nimm die setup.py aus dem Wiki und installier auf den Zielsystemen die GTK Runtime direkt. Das ist das einfachste.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Antworten