19

問題 A :

  1. コマンドラインで「gdb test」を使用してgdbを起動します
  2. 他のことをする前にctrl-x、ctrl-aを押します
  3. 次に、「b main」を使用してブレークポイントを設定します
  4. 次に、「r」を使用してプログラムの実行を開始します

この時点まで、上矢印キーを押しても src ウィンドウはスクロールしません。代わりに、コマンド ウィンドウに "^[0A" というものが表示されます。ctrl-l で画面を更新しようとすると、コマンド ウィンドウに「^L」が表示されます。

これは起こるべきではないと思います。この状況では、cx,ca で tui モードを終了することさえできません (代わりに "^X^A" が表示されます)。私は何か間違ったことをしていますか?TUI インターフェイス内で「実行」コマンドを使用している限り、この問題が発生することを認識しています。ただし、「gdb -tui」で gdb を起動すると、TUI で run コマンドを使用できます。

問題B

プログラムの出力が TUI モードで表示されません。GDB 自体の出力は確認できますが、デバッグ中のプログラムの出力は確認できません。これは、ctrl-x、ctrl-a を使用して TUI に入ったときと、-tui コマンドライン オプションを使用したときの両方で発生します。

これを修正する方法はありますか?

ネットで TUI の記事を読んだことがありますが、一部の人は TUI を「排他的に」使用しているようです。TUI は適切に機能すると思いますが、注意して従わなければならない一連のルールがあるだけですか?

編集:ubuntu 11.04でgnome-terminalを使用しています

4

5 に答える 5

10

代わりに -tui オプションを指定して gdb を実行します ( https://bbs.archlinux.org/viewtopic.php?id=112660 )

于 2013-03-23T06:18:51.153 に答える
1

端末を変更して、最初の問題を解決してください。以前は自分で gnome-terminal を使っていましたが、その後ターミネーターに変更しました。一部の端末では、Alt などのキーがサポートされない場合があります (一部の Alt+something マップを使用して vim でこれを経験するために使用されます)。

「focus winName」でフォーカスを別のウィンドウに変更できます。あなたの場合は、「focus src」を使用してください

2番目の問題についてはわかりません。幸運を!

于 2013-03-31T00:28:03.227 に答える
0

問題 A: Ctrl+X を使用してから a を押して、TUI モードを開始または終了します。または、あなたが言及したように、 gdb -tui を実行します

問題 B: プログラムの print が (gdb) プロンプトによって実行される可能性があることに注意してください。言い換えれば、あなたのプログラムは印刷されても、その上に " (gdb)" が印刷される可能性があります。これが実際に当てはまるかどうかを簡単に確認するには、6 文字を超える行または複数の行を毎回印刷してみてください。プリントの一部が表示されます。

于 2021-11-17T22:33:30.097 に答える