GDB 调试器在 Code::blocks 中不起作用
GDB debugger doesn't work in Code::blocks
信息:
OS: Ubuntu 14.04
IDE: Code::blocks 13.12
调试器:gdb 7.10
我是 code::blocks 的新手,正在试用调试器,但没有用。所以我来这里是想问你我能做些什么来找到解决这个问题的方法。
当我单击 'step into' 时,XTerm 控制台打开并显示以下消息:
warning: GDB: Failed to set controlling teminal: Operation not permitted
并且在任何地方都看不到输出。
I found out there was no real problem, I only had to end the line that I was trying to see with a 'endl'
我试图在调试会话中执行但看不到的内容:
cout << "Hello World!";
是什么解决了问题,使我能够在调试器中看到输出:
cout << "Hello World!" << endl;
确实,您需要刷新缓冲流(即 fflush
代表 FILE*
,.flush
代表 std::stream
-s)。
但是您不需要 IDE 到 运行 gdb
。您可以在普通终端中 运行,尝试 gdb
或 gdb -tui
或 gdb --args
or in Emacs
信息:
OS: Ubuntu 14.04
IDE: Code::blocks 13.12
调试器:gdb 7.10
我是 code::blocks 的新手,正在试用调试器,但没有用。所以我来这里是想问你我能做些什么来找到解决这个问题的方法。
当我单击 'step into' 时,XTerm 控制台打开并显示以下消息:
warning: GDB: Failed to set controlling teminal: Operation not permitted
并且在任何地方都看不到输出。
I found out there was no real problem, I only had to end the line that I was trying to see with a 'endl'
我试图在调试会话中执行但看不到的内容:
cout << "Hello World!";
是什么解决了问题,使我能够在调试器中看到输出:
cout << "Hello World!" << endl;
确实,您需要刷新缓冲流(即 fflush
代表 FILE*
,.flush
代表 std::stream
-s)。
但是您不需要 IDE 到 运行 gdb
。您可以在普通终端中 运行,尝试 gdb
或 gdb -tui
或 gdb --args
or in Emacs