Wenn ich Dateien mit gdb -tui
debuggen wird das Quellfenster immer vermasselt. Also habe ich jedes Mal getroffen eingeben muss ich sofort geben ctrl +L auf dieses Problem loszuwerden, das ist, wie gdb
refeshes das Fenster. Ich arbeite an Tty mit Gnu-Bildschirm.Wie automatisch gdb im Tui-Modus zu aktualisieren?
Gibt es eine Möglichkeit, gdb im Tui-Modus automatisch zu aktualisieren?
Wenn gdb diese Fähigkeit nicht hat, könnte Python eine Lösung sein, weil gdb Python-Dateien erzeugen kann, aber ich weiß nichts über Python.
Dieses Python-Schnipsel funktioniert in Bash in Ordnung, aber nicht in gdb:
import sys
r = "\033[2J" # here I try to emulate [ctrl-L]
t = ""
while 1:
i = sys.stdin.read(1)
t = t +i
if i == '\n':
print(r)
Natürlich ich jede andere Sprache, die von GDB unterstützt akzeptieren.
Jede Hilfe wird geschätzt.
Übrigens, hier ist ein Screencast https://youtu.be/DqiH6Jym1JY, die mein Problem zeigen.
Dies ist die Datei, die ich in gdb zur Demonstration wie den obigen Link Show verwendet, von tic -V
angezeigt
#include <stdio.h>
int main(void){
//int n = 120;
int n;
n = 120;
char stuff[n+2];
printf("Max: %d\n", n);
printf("Sizeof int: %d\n", sizeof(int) );
printf("Sizeof char: %d\n", sizeof(char));
printf("Sizeof n: %d\n", sizeof n );
printf("Sizeof stuff: %d\n", sizeof stuff );
fgets (stuff , n , stdin);
printf("The stuff:\n%s\n", stuff);
printf("Sizeof stuff after input = %d\n", sizeof stuff );
return 0;
}
Meine eigentliche ncurses Version mess_up.c ncurses 5.9.20140118
Bildschirm kann Ihr Problem sein. Persönlich finde ich, dass die Arbeit mit gdb von emacs über 'M-gdb' sehr gut funktioniert, da die Integration die Quelldateien in einem separaten Fenster behandelt, in dem du Befehle an gdb selbst gibst. – xxfelixxx
Ich habe die gleichen Probleme, wenn ich nur auf tty ohne Bildschirm arbeite. Ich kann nicht glauben, dass gdb genau richtig mit emacs funktioniert –
Einige Beispiele mit Bildern/Videos: http://tuhdo.github.io/c-ide.html – xxfelixxx