如何在GDB中编译C ++代码?

时间:2017-11-17 04:19:09

标签: c++ gdb

我遵循本手册:

https://repl.it/@marksman/ravijoshi

$ gdb ./test
(gdb) break main
(gdb) run
(gdb) compile code std::cout << "Hello world\n";
No compiler support for language c++.
(gdb) compile code print("hello world")
No compiler support for language c++.

这是否意味着不支持g ++?或者我需要以某种特殊的方式配置GDB?

1 个答案:

答案 0 :(得分:1)

您使用的调试器很可能太旧了。 在7.12(甚至更晚)之前,用户无法重新定义compile-gcc符号。因此,似乎无法为C ++指定编译器。尽管如此,issue已被报告并解决。 我想最好的解决方案是将gdb更新为更新的版本,方法是从official repository进行编译。

另一种解决方案是手动预编译代码并在gdb中手动注入代码,如here所述。听起来很有趣,但不确定这是不是很简单!