[Python-de] ich suche die Datei "pythonrun.c"

Georg Mischler schorsch at schorsch.com
Sun May 12 23:56:19 EDT 2002


Gerhard Häring wrote:

> > Wenn du dein Programm mit Python erweiterst, also ein #include "Python.h"
> > drinstehen hast, dann wird bei einem Debug-Build automatisch die
> > Python##_d.dll eingebunden.
>
> Ok. Was muss da sonst noch einstellen? Multithreaded MSVCRT DLL, selbige im
> Debug-Modus für Debug-Builds und im Release-Modus für Release Builds. War's
> das, oder sonst noch was?

Idealerweise wohl das gleiche, womit die Python-DLL kompiliert wurde.
Bei den Systembibliotheken komme ich normalerweise mit den
Vorgabeeinstellungen aus. Multithreaded DLLs ist unter Windows fast
grundsaetzlich zu empfehlen, sonst wird es sehr schnell ziemlich
unuebersichtlich.


> > ist es aehnlich einfach.  Du gibst dann als auszufuehrendes Programm beim
> > Debuggen schlicht den Debug-Build des Interpreters an (python_d.exe), und
> > wieder hast du mit F5 eine normale Debug-Session am laufen.
>
> Und als Kommandozeilenparameter das Testscript. Aus mir unerfindlichen Gründen
> musste ich bisher (zumindest unter Unix) auch immer ein "export PYTHONPATH=."
> machen, damit er das Testscript auch gefunden hat.

Unter unix gibt es zu viele verschiedene Optionen zum Debuggen, da
kann sich einiges von System zu System unterscheiden.


> > Wenn du im Code deiner Erweiterung einen Breakpoint gesetzt hast, dann kannst
> > du in der nun erscheinenden Konsole "import modulname" eingeben, und sobald
> > der Breakpoint erreicht ist, fuehlst du dich gleich wieder zuhause.
>
> Das Problem ist, dass man AFAIK Breakpoints nur in geladenen DLLs setzen kann,

Nein. Breakpoints setzt du in den Sourcen, zu jedem beliebigen
Zeitpunkt (auch vor das Programm ueberhaupt laeuft). Du startest
ja schon von der VisualStudio IDE aus, da ist das alles vollstaendig
integriert.


-schorsch

-- 
Georg Mischler  --  simulations developer  --  schorsch at schorsch.com
+schorsch.com+  --  lighting design tools  --  http://www.schorsch.com/




More information about the Python-de mailing list