如何在 Linux (redhat) 上通过 gdb 在 xterm 中使用 valgrind?
该命令打开一个 xterm 终端,该终端立即消失。
xterm -e gdb valgrind --tool=drd --read-var-info=yes ./star &
我需要它来调试 C++ 代码。
谢谢
如果你真的要调试valgrind
,过程是:
xterm -e gdb valgrind &
xterm
,设置断点等run --tool=drd --read-var-info=yes ./star
这应该有效:
xterm -e gdb --args valgrind --tool=drd --read-var-info=yes ./star &
假设您想调试 valgrind 本身(考虑到问题,这似乎不太可能)。
如果你真正想做的是调试./star
,而它在 下运行时DRD
,这在过去几乎是不可能的,但最近的 valgrind 版本已经成为可能,它嵌入了 gdbserver。
为此,您需要两个 xterm:
xterm -e valgrind --tool=drd --read-var-info=yes --vgdb-error=1 ./star &
xterm -e gdb -ex 'file ./star' -ex 'target remote | /path/to/vgdb' &