Frage

Ich habe einen Prozess, der einen Helferprozess hervorbringt. Manchmal muss ich im zweiten Prozess Startfehler debuggen.

Unter Windows würde ich verwenden Image File Execution Options, oder ntsd -o. Ich habe jedoch keine Ahnung, wie ich dies mit GDB unter OS X machen soll.

War es hilfreich?

Lösung

Verwenden Sie GDB -Wait. Versuchen Sie zum Beispiel

gdb --wait TextEdit

Starten Sie dann aus der Befehlszeile textedit.

Andere Tipps

Ich glaube nicht, dass Sie auf die gleiche Weise GDB -Start haben können. Führen Sie stattdessen Ihren übergeordneten Vorgang von GDB aus oder fügen Sie den Auslaufprozess vor, bevor er den Helfer ausgab. Es wird eine Einstellung genannt follow-fork-mode Das steuert, welcher Prozess der Debugger folgt. Sich ansehen Das GDB -Handbuch für eine schöne Beschreibung.

Wenn Sie Launchd verwenden, um Prozesse zu laichen, gibt es eine WaitForDebugger Boolean Key, der in der Plist -Datei des Jobs liegt. Wenn es ja ist, dann wartet Launchd (überraschend!) Für den Debugger schon einmal exec()den Job machen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top