Hallo,
Ich benutze derzeit Testweise PyInstaller (für Version 2.6) um aus einem .pyw-File ein .exe-File zu erstellen. Dieses soll im Prinzip ein Tkinter-Fenster anzeigen.
Nun habe ich dieses Programm auf einem anderen Rechner ausprobiert (ohne Python installiert), wo mir dann folgendes gemeldet wurde:
Fatal Error: C:\DOCUME~1\USER\LOCALS~1\TEMP\_MEI10602\python26.dll cannot be loaded (oder in der Richtung..)
Bei mir zuhause funktioniert alles bestens, als Optionen habe ich bei der Konvertierung Onefile, Noconsole, Tk verwendet.
Woran könnte der Fehler liegen. Das Warn-Log ist unter http://pastebin.com/Jsr6Acjd abrufbar.
mfg
Fatal error mit py26win
Welche Module verwendest Du? Es gibt im Moment z.B. ein bekanntes Problem des py26win-Branch mit matplotlib. Evtl. sind auch andere Module betroffen. Du kannst die Programmdateien (.pyw und .spec-Datei, .exe bei welcher der Fehler auftritt wäre evtl. auch hilfreich) nicht zufällig zur Verfügung stellen oder ein Minimalbeispiel, das den Fehler ebenfalls zeigt?
Weil diese von pyinstaller (unter Windows) immer mitgenommen wird (auch ohne py26win). Wenn nicht, ist etwas gründlich schiefgelaufen.Warum sollte dort die python26.dll sein?
Mach doch mal folgendes auf dem PC mit Python/pyinstaller in einer Eingabeaufforderung:
C:\Python26\python C:\Python26\py26win\ArchiveViewer.py <Pfad zur exe>
So siehst Du alle gepackten Dateien.
(ich frage hier auch nochmal nach der .pyw, dem .spec und der fehlerhaften exe, oder einem Minimalbeispiel.)
Nun, er sagt mir:
Code: Alles auswählen
C:\Python26>python C:\Python26\py26win\ArchiveViewer.py C:\python26\py26win\ctdw
\dist\ctdw.exe
pos, length, uncompressed, iscompressed, type, name
[(0, 729151, 729151, 0, 'a', 'tk.pkg'),
(729151, 647105, 647105, 0, 'z', 'outPYZ1.pyz'),
(1376256, 8259, 21177, 1, 'm', 'iu'),
(1384515, 169, 234, 1, 'm', 'struct'),
(1384684, 5940, 14802, 1, 'm', 'archive'),
(1390624, 1157, 2272, 1, 's', '_mountzlib'),
(1391781, 886, 1698, 1, 's', 'unpackTK'),
(1392667, 225, 388, 1, 's', 'useTK'),
(1392892, 81, 76, 1, 's', 'useUnicode'),
(1392973, 694, 1686, 1, 's', 'ctdw'),
(1393667, 901, 1877, 1, 's', 'removeTK'),
(1394568, 31431, 33280, 1, 'b', '_ctypes.pyd'),
(1425999, 7555, 9728, 1, 'b', 'select.pyd'),
(1433554, 170764, 173056, 1, 'b', 'unicodedata.pyd'),
(1604318, 6295, 8704, 1, 'b', 'winsound.pyd'),
(1610613, 33330, 35328, 1, 'b', 'bz2.pyd'),
(1643943, 13507, 15872, 1, 'b', '_tkinter.pyd'),
(1657450, 796767, 817152, 1, 'b', 'python26.dll'),
(2454217, 333067, 349184, 1, 'b', 'tcl85.dll'),
(2787284, 391264, 410624, 1, 'b', 'tk85.dll')]
Ok, eventuell ist pywin32 nicht installiert (pyinstaller/py26win sollte zwar eine entsprechende Warnung ausspucken, aber ich habe das jetzt mal für Python 2.6 unter Windows in einen Abbruch mit entsprechender Fehlermeldung geändert, da es wohl sonst etwas unklar ist).
Warum sollte pywin32 nicht installiert sein? Jedenfalls, hier ist der Inhalt des Projektordners + der .pyw sowie dem Log der Build.py:
http://www.speedyshare.com/files/22043933/ctdw.zip
(Nebenbei: Gibt es irgendeine Möglichkeit, dass PyInstaller nicht die Sprachfiles (Spanien, Ungarn,..) sowie Tk-Bilder mitkopiert?)
http://www.speedyshare.com/files/22043933/ctdw.zip
(Nebenbei: Gibt es irgendeine Möglichkeit, dass PyInstaller nicht die Sprachfiles (Spanien, Ungarn,..) sowie Tk-Bilder mitkopiert?)
Naja, dann wären mehr Dateien in der exe, und ausserdem, Dein log.txt sagt esWarum sollte pywin32 nicht installiert sein?
(darum oben mein Hinweis, dass das Fehlen von pywin32 in der neuesten Revision von py26win für einen Programmabruch sorgt, um damit zu vermeiden, den Eindruck zu erwecken, es würde ohne gehen)W: No module named pywintypes
W: Cannot check for assembly dependencies - resource access
W: unavailable. To enable resource access, please install
W: http://sourceforge.net/projects/pywin32/
Wegen der Sprachfiles/Bilder: Da bin ich gerade überfragt, funktioniert es evtl mit excludes? Siehe hier http://www.pyinstaller.org/export/lates ... w#analysis