[Python-de] Stand-alone Application für mehrere Plattformen

Sebastian Wiesner basti.wiesner at gmx.net
Do Jun 19 15:59:14 UTC 2008


Hartmut Goebel <h.goebel at goebel-consult.de> at Thursday 19 June 2008, 
12:15:57
> Hi,
>
> ich möchte eine kleine Anwendung schreiben, die ohne Installation auf
> Win32, Linux und OS-X läuft. Die benötigten (GUI-) Bibliotheken sollen
> auch in dem stand-alone-Executable enthalten sein. 

Zumindest unter Linux ist das eher unerwünscht ;)  Wofür hat man den 
Paketmanagement.

> Wie bekomme ich das für Windows hin? py2exe?

Ja, aber meine Erfahrungen mit Qt 4 waren eher abschreckend.  Das Ganze ist 
sehr anstrengend, da py2exe es bei komplexeren Bibliotheken nicht 
hinkriegt, alle Abhängigkeiten zu packen.

> Brauche ich da für's Entwickeln/Build einen Win/Mac-Maschine?

Die Frage solltest du dir selbst beantworten können:  Wenn man eine 
Anwendung für ein System ausliefert, muss sich auch unter diesem System 
getestet werden.  Alles andere ist fahrlässig.

Ein Cross-Build ist mit py2exe + neueres wine zwar möglich, aber noch mal 
zwei Stufen ätzender als py2exe unter Windows ...

Wenn ich noch ein paar persönliche Sachen anmerken darf:  Imho ist es 
weniger stressig, die benötigten Pakete als Installer mitzuliefern.  Bei 
distutils/setuptools-Projekten lassen sich diese Installer auch 
nachträglich bauen, wenn sie nicht existieren.  Diese Installer kann man 
dann mit InnoSetup oder NSIS zusammenschalten, so dass sie hintereinander 
ausgeführt werden.  Das ist zwar nicht ganz so komfortabel, spart aber 
einiges an Kopfschmerzen für dich als Programmierer.  Und dem 
Windows-verwöhneten Setup.exe-Doppelklicker kannst du trotzdem einen 
einzigen Installer anbieten ...

-- 
Freiheit ist immer die Freiheit der Andersdenkenden.
                                            (Rosa Luxemburg)
-------------- nächster Teil --------------
A non-text attachment was scrubbed...
Name: nicht verfügbar
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
URL: <http://python.net/pipermail/python-de/attachments/20080619/f8213f88/attachment-0001.pgp>