Python3.1 + Ubuntu = Windows-Exe?

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.
Antworten
heiliga horsd

Hallo,
ich bräuchte mal wieder eure Hilfe, und zwar möchte ich gerne von einem etwas umfangreicheren Python 3.1-Script unter Ubuntu eine Windows-Executable (.exe) erzeugen. In den Repos findet sich lediglich cxfreeze (welches ich auch gerne weiterhin verwenden möchte) für Python 2.6 und für das bauen/installieren (oder wie auch immer das heißt) von cxfreeze für python3.1 bin ich irgendwie zu blöd :/

Kann mir da evtl. jemand nen Tipp oder eine Hilfestellung oder einen nützlichen Link geben? Ich habe auch nichts gegegen mir noch unbekannte Seiten bei denen es das ganze schon gepackt gibt.


Vielen Dank im voraus!
Lg HH


P.S.: Irgendwie scheinen Pakete wie bspw. PyQt unter Linux nach wie vor noch für Python2.6 zu sein - gibt's da auch ne alternative zum selberkompilieren?
philistion
User
Beiträge: 108
Registriert: Sonntag 7. Februar 2010, 14:16

Das sieht im Moment nicht so gut aus. Aber warum kompilierst du dir sie nicht einfach selbst, musst nur unter Ubuntu die notwendigen Tools, also build-essentials oder so, sowie den gcc, make, autoconf, etc. installiert haben. Dauert ja auch nicht "so" lange.

Das erzeugen von Windows-Executables ist aber generell eine unangenehme Prozedur, ich mach das meist mit PyInstaller (geht aber denke ich im Moment nur bis 2.6). Muss es denn unbedingt 3.1 sein? Verwendest du Features die in 2.6 noch nicht integriert sind?
heiliga horsd

Ich hab das mit meinem letzten Ubuntu schon gemacht gehabt (mit dem kompilieren) und das ganze hat sich dann mit den original-packages, welche für Python2.6 waren und auch installiert werden sollten, gebissen und daher wollte ich lieber nochmal nach einer Alternative fragen.

Bisher ging das mit cxfreeze (unter Windows) ganz gut, aber irgendwie bin ich anscheinend zu dumm das unter Ubuntu zum laufen zu bekommen. Python 2.6 beherrsche ich nicht da ich mit 3 gelernt habe...
philistion
User
Beiträge: 108
Registriert: Sonntag 7. Februar 2010, 14:16

So viel Unterschied ist da nicht, wenn du Python 3.1 "beherrscht", wird es mit Python 2.6 auch kein Problem geben, keine Sorge. Die Unterschiede sind wirklich minimal, und wenn du es sogar noch ohne speziellen Grund verwendest, würde ich nur noch mehr dazu raten, auf den Quasi-Standard 2.6 zu wechseln, da es leider immer noch recht viele Inkompatibilitäten mit der neuen 3er Version gibt.
heiliga horsd

Naja bei dem aktuellen Programm arbeite ich nicht alleine, und wir haben uns eben auf Python3.1 festgelegt. außerdem hab ich noch nirgends Lektüre gesehen, in der die Unterschiede hinreichend für Umsteiger auf die ältere Version aufbereitet wurden.
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

philistion hat geschrieben:[...]da es leider immer noch recht viele Inkompatibilitäten mit der neuen 3er Version gibt.
Wieso "leider", die sind gewollt. Ich würde empfehlen bei geplanten größeren Projekten gleich 2to3 zu integrieren und dafür zu sorgen dass die Tests auf python3 und python3 laufen. Solange man auf Kompatibilität zu Versionen unter 2.6 verzichten kann funktioniert dass sogar ohne allzu großen Aufwand.

Will man allerdings 2.5 oder sogar 2.4 support muss man sich auf einige Probleme einstellen.
philistion
User
Beiträge: 108
Registriert: Sonntag 7. Februar 2010, 14:16

Ich meinte nicht die Unterschiede zu Python 3.1, sondern die vielen Drittpakete die noch nicht mit Version 3 funktionieren. Der Fortschritt ist toll, doch wenn man sich auf viele Bibliotheken stützt, wird ein Umstieg oft zum Problem. Viele der häufig verwendeten Libs werden nicht mehr aktiv weiterentwickelt und sind somit zwangsläufig zur Inkompatibilität verurteilt. Das sollte man (=wir!) ändern!
heiliga horsd

Also cxfreeze gibts für Python 3 - nur wie baue ich das?
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

wine installieren
in wine Python3.1 installieren
cxfreeze als exe für 3.1 runterladen und in das wine python installieren
nun kannste du mit dem wine python python exen erstellen
heiliga horsd

Hmm, das hört sich gar nicht schlecht an! Ist zwar ziemlich unelegant aber wenn es funktioniert ist es mir egal.
Ich probier das mal aus.
Antworten