Seite 1 von 1

python-Programm als .exe

Verfasst: Mittwoch 7. März 2012, 18:25
von -dude-
Hallo zusammen,

ich habe in PyQt ein Program geschrieben. Nun würde ich das gerne für Windoof-User benutzbar machen. Wie würdet ihr das angehen? Würdet ihr ein .exe-FIle daraus machen? Falls ja, nehmt ihr py2exe? Funktioniert das mit Qt? Falls nicht wie würdet ihr dann vorgehen?

Danke schonmal,
Grüße

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 09:28
von Rekrul
-dude- hat geschrieben:Würdet ihr ein .exe-FIle daraus machen?
Falls du nicht davon ausgehen kannst, dass python und alle Abhängigkeiten die dein Programm verwendet auf den Zielrechnern vorhanden sind und den Benutzern nicht zutrauen kannst / willst diese zu installieren, dann wird dir vermutlich nichts anderes übrig bleiben, als dein Programm zu 'freezen'.

Ob du nun Py2Exe, pyinstaller, cx_freeze, bbFreeze etc. verwendest bleibt dir überlassen und ist sicherlich auch ein wenig Geschmacksache. Ich persönliche nutze pyinstaller und bin damit sehr zufrieden.

Falls du mit diesen Kommandozeilentools nicht zurecht kommst, kannst du dir ja GUI2EXE anschauen. Ist allerdings nur eine GUI um die oben genannten tools ...

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 10:40
von snafu
Zumindest von PyInstaller weiß ich, dass er "damals" (etwa 1-2 Jahre her) ganz gut mit PyQt funtioniert hat. Würde folglich mal vermuten, dass es sich in der Hinsicht eher verbessert statt verschlechtert hat. ;)

PyIntaller verfolgt ja das Ziel, immer möglichst out-of-the-box (also ohne die Notwendigkeit irgendwelcher Konfigurationseinstellungen) benutzbar zu sein. Ich weiß nicht, wie das bei anderen "Freezern" aussieht.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 11:38
von Rekrul
Ich kann bestätigen, dass PyQt, matplotlib und numpy/scipy auch heute noch 'out-of-the-box' funktionieren.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 15:33
von Leonidas
Rekrul hat geschrieben:Falls du nicht davon ausgehen kannst, dass python und alle Abhängigkeiten die dein Programm verwendet auf den Zielrechnern vorhanden sind und den Benutzern nicht zutrauen kannst / willst diese zu installieren, dann wird dir vermutlich nichts anderes übrig bleiben, als dein Programm zu 'freezen'.
Ach wieso, man kann doch einfach eine reguläre Python-Version mitliefern.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 16:34
von BlackJack
@Leonidas: Und Qt, und PyQt, und… — das dann alles in der richtigen Reihenfolge installieren überfordert einige Endbenutzer und schreckt andere ab.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 16:50
von -dude-
Danke für eure Hilfe ich werde mir die ganzen Ideen angucken.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 17:59
von lunar
@Leonidas: Außerdem kann man unter WIndows nicht bestimmen, mit welcher Python-Version ein Skript ausgeführt wird. Lieferst Du Dein Programm für Python 3 aus, und der Nutzer installiert später aus irgendwelchen Gründen Python 2, kann es passieren, dass Dein Programm dann plötzlich auch mit Python 2 gestartet wird.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 18:08
von Leonidas
@BlackJack: Natürlich.
lunar hat geschrieben:@Leonidas: Außerdem kann man unter WIndows nicht bestimmen, mit welcher Python-Version ein Skript ausgeführt wird. Lieferst Du Dein Programm für Python 3 aus, und der Nutzer installiert später aus irgendwelchen Gründen Python 2, kann es passieren, dass Dein Programm dann plötzlich auch mit Python 2 gestartet wird.
Dafür kann man entsprechende Starter-Files machen. Ist schon nicht sonderlich kompliziert. Vorteil ist, dass sich das Skript wie beim Entwickler verhält, nicht so wie ein "gefreezed"-es Programm, wo manchmal Sachen wie ``__name__`` etc. sich unterschiedlich verhalten.

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 18:16
von lunar
@Leonidas: "Starter-File"?!

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 18:25
von -dude-
Also, ich verzweifle im Moment an meinen Windows-Fähigkeiten. Unter Linux ist es so einfach das Programm auszuführen. Alles installieren und python programm.py und fertig. Unter WIndows nix.. Ich hab Python 2.7 und PyQt4 installiert aber ich kann die Datei nicht ausführen.

Kann mir da jemand weiterhelfen?

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 18:29
von lunar
@-dude-: Ohne detaillierte Beschreibung und Fehlermeldung... kaum. Beschreibe also bitte, wie Du Python und PyQt4 installiert hast, wie Du das Programm startest, und welche Fehlermeldung auftritt, wenn Du das Programm aus der Konsole startest (andernfalls siehst Du die Fehlermeldung nicht!).

Re: python-Programm als .exe

Verfasst: Donnerstag 8. März 2012, 22:26
von snafu
lunar hat geschrieben:@Leonidas: "Starter-File"?!
Denke mal, es ist eine Batchdatei gemeint, die explizit eine bestimmte Interpreterversion aufruft. Das setzt allerdings voraus, dass analog zur Vorgehensweise unter Linux irgendwelche Softlinks mit entsprechenden Benennungen erstellt wurden, was wohl eher unwahrscheinlich ist...

Re: python-Programm als .exe

Verfasst: Freitag 30. März 2012, 08:23
von Campionissimo
Hallo,
ich habe ein .EXE Datei von meinem Python script erstellt.
Wenn ich diese exe an einem anderen Computer ausführen möchte geht es nicht, klar.
Wie könnte ich die fehlenden Module, wie wx in die exe miteinbinden ?
Zusätzlich noch die Frage kann static.bitmap auch in die exe miteinbinden?

Vielen Dank

Re: python-Programm als .exe

Verfasst: Freitag 30. März 2012, 09:26
von snafu
Campionissimo hat geschrieben:Wenn ich diese exe an einem anderen Computer ausführen möchte geht es nicht, klar.
An sich nicht so klar. Denn gerade für die Ausführung des Skriptes auf fremden Rechnern (wo die Abhängigkeiten, wie z.B. installiertes Python, nicht erfüllt sind), sollte mit der fertigen EXE problemlos funktionieren. Sonst macht das ganze ja auch relativ wenig Sinn. Hast du PyInstaller mal probiert?

Re: python-Programm als .exe

Verfasst: Freitag 30. März 2012, 13:50
von Campionissimo
Hallo,

vielen Dank,

hab es jetzt mit mit pyinstaller eine exe erstellt. Kann man auch ein Bild mit in die exe einfügen ?

Danke und Grüße

Re: python-Programm als .exe

Verfasst: Freitag 30. März 2012, 22:38
von OTB
snafu hat geschrieben:
Campionissimo hat geschrieben:Wenn ich diese exe an einem anderen Computer ausführen möchte geht es nicht, klar.
An sich nicht so klar. Denn gerade für die Ausführung des Skriptes auf fremden Rechnern (wo die Abhängigkeiten, wie z.B. installiertes Python, nicht erfüllt sind), sollte mit der fertigen EXE problemlos funktionieren. Sonst macht das ganze ja auch relativ wenig Sinn. Hast du PyInstaller mal probiert?
Seit python 2.6 klappt das mit py2exe und cx_freeze leider nicht mehr so einfach, wenn auf dem Zielrechner gewisse Microsoft-dll-Dateien fehlen.
http://cx_freeze.readthedocs.org/en/latest/overview.html

Dann werde ich PyInstaller mal ausprobieren....

Re: python-Programm als .exe

Verfasst: Samstag 31. März 2012, 07:41
von snafu
Campionissimo hat geschrieben:hab es jetzt mit mit pyinstaller eine exe erstellt. Kann man auch ein Bild mit in die exe einfügen ?
Nö, die Bilddateien musst du separat ausliefern.