Python Code vorcompilieren?

Martin Von Loewis Martin.Von.Loewis at 4904-0-208.wing.gun.de
Mon Mar 9 21:21:36 EST 1998


From: martin at mira.isdn.cs.tu-berlin.de (Martin Von Loewis)

 * To: "Python-De at solar.Skyport.Net"@modemgate.tasy.extern.de

Apparently-to: Peter_Dreuw at wing.gun.de
Status: RO

using -f
From: Martin von Loewis <martin at mira.isdn.cs.tu-berlin.de>
Subject: Re: Python Code vorcompilieren?

> Jau, man muss evtl. nur mit externen Modulen aufpassen, die man
> verwenden moechte. Ich hatte da mal Probleme mit dem oracledb
> Modul. Ging zwar alles prima nach freeze, aber nur auf der Ausgangs-
> maschine. Auf einer anderen fehlte zur Laufzeit ploetzlich etwas.
> Ich habe nie genau herausgefunden, was, aber moeglich waere es, dass 
> man die extensions nicht als shared libraries erzeugen, sondern
> statisch in den Interpreter compilieren muss. Kann das jemand 
> bestaetigen?

Ja, ich. Ich falle regelm?~ig wieder darauf herein, da~ ich das
nsremote-Modul nicht mit hineinfreeze (sch/ner Deutsch). Das ist
i.d.R. nicht Python's Fehler: Man kann eine shared library nicht
statisch in ein Programm hineinlinken, zumindest unter den meisten
Betriebssystemen. Hier eine Kurzanleitung:

Zum freezen immer eine Pythoninstallation benutzen, bei der nichts
dynamisch ^nbersetzt ist.
Wenn man eigene Bin?rmodule hat, immer eine statische und eine
dynamische Kopie vorr?tig halten; die statische Kopie kann man
am besten in die libModules.a mit aufnehmen.
Beim freezen auf Fehlermeldungen achten: Wenn freeze ein Modul
nicht findet, funktioniert meist das fertige Programm auch nicht.

Und noch ein Bonbon: Freezen von Tkinter-Programmen. Wenn man
Tkinter-Programme normal freezt, ben/tigen sie TCL_LIBRARY und
TK_LIBRARY - sehr unhandlich. Gl^ncklicherweise gibt's Tix, und das
unterst^ntzt SAM (Standalone Modules). Man ^nbersetzt Tix mit tclsam und
tksam, und linkt dann noch ein paar Sambibliotheken dazu. Das erfordert
allerlei Handarbeit, und die Tixsam unterst^ntzt auch nicht das neueste
Tk, aber am Ende hat man ein wirklich alleinstehendes Programm.

Ciao,
Martin

______________________________________________________________
   python-de          the German Python mailing list
send messages to:   <mailto:python-de at solar.skyport.net>
list manager: <mailto:owner-python-de at solar.skyport.net>
______________________________________________________________

--- FIDOGATE 3.9.7
--
|Internet: Martin.Von.Loewis at 4904-0-208.wing.gun.de


______________________________________________________________
   python-de          the German Python mailing list
send messages to:   <mailto:python-de at solar.skyport.net>
list manager: <mailto:owner-python-de at solar.skyport.net>
______________________________________________________________




More information about the Python-de mailing list