|
2.12.11 Spezialthema: Ausführen externer Programme unter einem Debugger
MathLink erlaubt Ihnen, externe Programme unter einem beliebigen von Ihrer Software-Umgebung angebotenen Debugger auszuführen.
MathLink-kompatible Programme können in der Regel Argumente verwenden, die üblicherweise über die Kommandozeile eingegeben werden und die festlegen, welche MathLink-Verbindungen sie einsetzen sollen.
Ausführen eines externen Programms unter einem Debugger
Beachten Sie, daß Sie möglicherweise -g oder andere Flags spezifizieren müssen, wenn Sie das Programm kompilieren, damit Sie eine Version eines externen Programms erhalten, die unter dem Debugger ausgeführt werden kann.
Debugger
Setze einen Haltepunkt in der C-Funktion f.
break f
Breakpoint set: f: line 1
Starte das externe Programm.
run -linkcreate
Das Programm antwortet damit, über welchen Port es empfängt.
Link created on: 2981@frog.wolfram.com
Mathematica-Session
Dies stellt eine Verbindung zum Programm her, das unter dem Debugger ausgeführt wird.
In[1]:=Install[LinkConnect["2981@frog.wolfram.com"]]
Out[1]=LinkObject[2981@frog.wolfram.com, 1]
Dies ruft eine Funktion auf, die Code im externen Programm ausführt.
In[2]:=f[16]
Debugger
Das externe Programm stoppt am Haltepunkt.
Breakpoint: f(16)
Dies weist den Debugger an fortzufahren.
continue
Mathematica-Session
Nun wird f zurückgegeben.
Out[2]=561243
|