Ich benötige einige Erläuterungen zur Funktionsweise von GDB in der IDE-Umgebung in Cloud9

Gibt es zwei verschiedene Arten von Debuggern als die IDE? Umgebung?

  • Debugger über debug Befehlseingabe, die aussieht, werden Eingaben Schritt für Schritt kompiliert / überprüft? (für Quelldatei)

  • GDB, die das ausführbare Programm überprüft?

Wie übergeben Sie Argumente? GDB? Ich kann das anscheinend nicht herausfinden.

Ich schaue auf pset4 und möchte GDB auf der ausführbaren „Kopie“ ausführen und einen Eingabe- und einen Ausgabedateinamen

Wie würde ich das im Terminal machen?

BEARBEITEN

auch meine Der Debugger ist immer ebenfalls defekt.

Antwort

Um GDB mit Argumenten im Terminal auszuführen, verwenden Sie den Parameter –args.

gdb --args name arg1 arg2 arg3

debug50 (der grafische Debugger) ist nur GDB mit einer GUI. GDB wurde ursprünglich für den Betrieb über das Terminal entwickelt und ist es auch heute noch. Es ist viel flexibler als jeder grafische Debugger.

Hier sind jedoch einige Grundlagen:

  • Schrittweises Debuggen: next (or n)
  • Das Festlegen eines Haltepunkts erfolgt mit break (or b) [function or line number], zum Beispiel:

    break main oder break 20 wobei „20“ die zu unterbrechende Zeile ist.

  • Führen Sie das Programm mit run (or r).

  • Verwenden Sie continue or c, um zum nächsten Haltepunkt zu springen.

  • Um eine Variable in GDB zu drucken (ohne printf()), geben Sie print varname ein.

Alternativ können Sie, nachdem Sie einige Befehle kennen, Ihr Programm mit einigen Argumenten mit [r]un arg1 arg2 arg3 ausführen.

Wie für Ihre Probleme mit debug50, es tut mir leid zu sagen, dass der Vorgänger von debug50 kaputt war und es sieht so aus, als ob debug50 jetzt auch kaputt ist. Ich habe es zumindest nie geschafft, das Problem zu beheben.

Kommentare

  • Danke für die sehr ausführliche Antwort!. Eine weitere Frage ist, ob GDB in einigen Linux-Bash-Umgebungen und möglicherweise in der Windows-Eingabeaufforderung vorinstalliert ist.
  • GDB ist meines Wissens in jeder Linux-Distribution vorinstalliert und sicherlich in der beliebtesten (arch, debian, ubuntu) , usw..). Um es unter Windows zu bekommen, müssen Sie möglicherweise Cygwin oder MinGW (Sammlungen von Linux / GNU / POSIX-Tools und -Dingen) verwenden. ' weiß nicht, ob die " offizieller " Download auf der GDB-Download-Seite gnu.org/software/gdb unterstützt tatsächlich Windows habe ich ' nicht versucht.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.