2010-11-26 10 views
4

こんにちは、私はLinuxオペレーティングシステム上でC/C++に最適なデバッガを知りたかったのです。 gdbとvalgrindについてはかなり良いと聞いたことがありますが、これらについて意見や比較を聞きたかったのです。Linux:最も強力なデバッガ

ありがとうございました

答えて

1

Eclipseには、優れた統合デバッグ環境があります。これはGDB上のグラフィカルなラッパーですので、XcodeやVisual Studioのようなインターフェースを使ってGDBの力を得ることができます。

"GDB"は唯一の "本物のデバッガ"です(そして、 "DDD"のように思えます) - Eclipseこれはおそらくあなたが探しているデバッガとIDEです。

6

私の意見ではおそらくGDBがあります。

  • GDB:GNUデバッガ
  • DDD:データ表示デバッガ、グラフィカルデバッガのフロントエンド
  • Nemiver:GNOME

メモリデバッガのためのスタンドアロンのグラフィカルデバッガ。

  • Valgrindの:メモリデバッガやプロファイラ
  • 電気柵:mallocのデバッガ
  • DUMA:予期せぬメモリアクセスを検出 - レッドゾーンメモリアロケータ

Source

+0

返信いただきありがとうございます。私はDDDをほとんど使用していません。しかしそれは目に見えにくいように見えます。 DDDを美しくする方法はありますか? – smilingbuddha

+0

http://www.kdbg.org/をご覧ください。 – E3pO

1

Linuxでよく使われるすべてのC++ソースレベルのデバッガは、gdbまたはgのラッパーですdb。少なくとも、GNU以外のツールチェーンを使用している場合を除きます。

Valgrindはデバッガではありません。これは動的な振る舞い分析ツールで、ある種の不正行為を検出するのに使用できます。通常はバグですが、通常はデバッガを使用するものではありません。コードをステップ実行したり、変数などを検査することはできません。Valgrindを使用して、ほとんどのタイプの論理エラーを検出することはできません。

私はValgrindがデバッガであると主張したとは思いません。

0

あなたはvalgrindについて正しいです。これは、メモリの動的割り当てによって引き起こされるメモリリークを検出するのに便利なツールです。

3

また、EDBもあります。これはBackTrack 5に含まれていますが、逆転に向いています。

1

は、それは、GDBの下に座っていると大幅にgdbの可逆的なデバッグ機能を強化(例えばメモリ破損?不良メモリ場所にウォッチポイントを設定し、逆続けるんストレートの最後の部分に移動するにはUndoDB http://undo-software.com/

を参照してください。そのメモリを更新するコード)。

関連する問題