kann nur defekte *.exe Dateien erzeugen

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.
thomson
User
Beiträge: 3
Registriert: Mittwoch 27. Dezember 2006, 08:33
Wohnort: Nürnberg/Bregenz

kann nur defekte *.exe Dateien erzeugen

Beitragvon thomson » Mittwoch 27. Dezember 2006, 09:13

Hallo,
nachdem ich nun schon stundenlange im Internet und diesem Forum vergeblich nach einer Lösung meines Problems gesucht habe, hoffe ich, dass mir vielleicht jemand von euch helfen kann.


Ich möchte ein bestehendes Python-Skript in eine Exe-Datei umwandeln, so dass ich es auch auf Computern ohne Python-Installation benutzen kann.

Ich habe es inzwischen mit 3 Programmen versucht: Pyinstaller-1.3, McMillan_5b55 und py2exe0.6.5. Alle 3 Programme erzeugen mir auch meine gewünschte Exe-Datei. Nur leider ist sie im Falle von py2exe und mcmillan erst gar nicht zu öffnen.

Bei pyinstaller1.3 gibt es die Besonderheit, wenn ich die exe ohne jegliche Option erstellen will, also:

Code: Alles auswählen

...python\makespec.py file.py

kann ich die erstellte Datei nicht öffnen.
Erstelle ich die Datei jedoch mit mit den Optionen --noconsole und --onefile:

Code: Alles auswählen

...python\makespec.py -Fw file.py

ist meine entstandene Datei funktionsfähig, aber sehr unstabil. Belasse ich sie auf dem Desktop ist sie voll funktionsfähig. Verschiebe ich sie jedoch auf einen usb-stick oder einen anderen Computer sogar ist sie ebenfalls nicht mehr zu öffnen.

Beim Erstellen mit Pyinstaller habe ich folgende warnxxx.txt mit erzeugt bekommen:

Code: Alles auswählen

W: no module named posix (conditional import by os)
W: no module named pwd (delayed, conditional import by posixpath)
W: no module named MacOS (top-level import by Tkinter)
W: no module named posix (delayed, conditional import by iu)
W: no module named org (top-level import by copy)
W: no module named _emx_link (conditional import by os)
W: __all__ is built strangely at line 0 - dis (C:\Python24\lib\dis.pyc)
W: delayed  __import__ hack detected at line 0 - encodings (C:\Python24\lib\encodings\__init__.pyc)
W: __all__ is built strangely at line 0 - re (C:\Python24\lib\re.pyc)
W: delayed  exec statement detected at line 0 - Tkinter (C:\Python24\lib\lib-tk\Tkinter.pyc)
W: delayed  eval hack detected at line 0 - os (C:\Python24\lib\os.pyc)
W: __all__ is built strangely at line 0 - tokenize (C:\Python24\lib\tokenize.pyc)
W: delayed conditional exec statement detected at line 0 - iu (c:\python24\pyinstaller-1.3\iu.pyc)
W: delayed conditional exec statement detected at line 0 - iu (c:\python24\pyinstaller-1.3\iu.pyc)


Ich konnte mir aus dem Ganzen jedoch keinen Reim daraus machen und gehe einmal davon aus, dass ich einfach Python falsch installiert habe. Diese Warnfile.txt wurde unter Python 2.4 erzeugt. Sicherheitshalber habe ich es auch noch mit Python 2.5 versucht. Zusätzlich habe ich immer die dazu gehörige version von pywin32 installiert. Nach dem Installieren habe ich zusätzlich noch die Umgebungsvariable PATH dem Installationspfad angepasst.

Zur Vervollständigung noch:
Meine Python-Datei besitzt eine GUI mit Tkinter erstellt, und greift mehrmals auf math() zu.

Wenn jemand von euch neben dem ganzen Verdauen derzeit noch eine Idee oder Ahnung davon hat, was ich dabei verkehrt mache, wäre ich ihm sehr verbunden.

Vielen Dank im Vorraus und ein schönes Neues.
Thomas
rafael
User
Beiträge: 189
Registriert: Mittwoch 26. Juli 2006, 16:13

Beitragvon rafael » Mittwoch 27. Dezember 2006, 10:33

Versuch es mal genau nach diesem Tutorial zu machen und schau dir die Beispiel an, die bei py2exe beiliegen. Da muss man IMHO nur noch die Pfadangaben etc. ändern und das wars :D
thomson
User
Beiträge: 3
Registriert: Mittwoch 27. Dezember 2006, 08:33
Wohnort: Nürnberg/Bregenz

Beitragvon thomson » Mittwoch 27. Dezember 2006, 14:35

Ja, danke schön für den Verweis, aber ich habe das Programm erst über dieses Toturial kennengelernt, wie ich es benutzen muss. Aber wie schon geschrieben, konnte ich die dabei entstandene Exe-Datei nicht öffnen.
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Mittwoch 27. Dezember 2006, 14:52

Seltsam. Versuch doch erstmal ein "Hallo Welt!"-Programm mit py2exe zu einer EXE-Datei zu konvertieren und guck ob wenigstens das geht. Wenn das geht, kannst du versuchen, dich an etwas größeres zu wagen, ob das dann immer noch geht oder nicht.

Wenn das "Hallo Welt!"-Programm aber nicht geht, dann kannst du beide Quelltexte (also dein Programm und die setup.py) hier posten (oder besser ins LodgeIt) und wir sehen mal weiter.
My god, it's full of CARs! | Leonidasvoice vs Modvoice

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder