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
python-Programm als .exe
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'.-dude- hat geschrieben:Würdet ihr ein .exe-FIle daraus machen?
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 ...
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.

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.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ach wieso, man kann doch einfach eine reguläre Python-Version mitliefern.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'.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
@Leonidas: Und Qt, und PyQt, und… — das dann alles in der richtigen Reihenfolge installieren überfordert einige Endbenutzer und schreckt andere ab.
@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.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
@BlackJack: Natürlich.
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.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.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
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?
Kann mir da jemand weiterhelfen?
@-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!).
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...lunar hat geschrieben:@Leonidas: "Starter-File"?!
-
- User
- Beiträge: 102
- Registriert: Montag 28. März 2011, 07:50
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
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
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?Campionissimo hat geschrieben:Wenn ich diese exe an einem anderen Computer ausführen möchte geht es nicht, klar.
-
- User
- Beiträge: 102
- Registriert: Montag 28. März 2011, 07:50
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
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
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.snafu hat geschrieben: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?Campionissimo hat geschrieben:Wenn ich diese exe an einem anderen Computer ausführen möchte geht es nicht, klar.
http://cx_freeze.readthedocs.org/en/latest/overview.html
Dann werde ich PyInstaller mal ausprobieren....