2012-01-20 70 views
0

如何在Linux(redhat)上使用xterm中的valgrind和gdb?如何在Linux(redhat)中使用xterm中的valgrind和gdb?

該命令打開一個xterm終端,立即消失。

xterm -e gdb valgrind --tool=drd --read-var-info=yes ./star & 

我需要它來爲C++代碼進行調試。

感謝

+0

什麼你的C++是代碼,''中valgrind'/star'什麼? – jpalecek

+0

在''''引號中引用你想運行的所有內容,看看是否有幫助。 – Blender

回答

0

如果你真的想調試valgrind,程序是:

  1. 運行xterm -e gdb valgrind &
  2. xterm,設置斷點和這樣
  3. 開始run --tool=drd --read-var-info=yes ./star程序
+1

或者在'valgrind'和它的參數之間加上'--args'。 – duskwuff

0

這應該工作:

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' &