デバッガーの使い方

Rust:
デバッガーの使い方

使い方:

Rustは様々なデバッガをサポートしていますが、GNU/Linuxでは gdb、macOSでは lldb が一般的です。rust-gdbrust-lldb を使用することもできます。これらはRustの値をきれいに表示するラッパーです。一例を見てみましょう:

fn main() {
    let mut counter = 0;
    for _ in 0..5 {
        counter += 1;
        println!("Counter is at: {}", counter);
    }
}

これをデバッグするには、デバッグ情報を含めてコンパイルします:

$ rustc -g counter.rs

その後、rust-gdb で実行します:

$ rust-gdb counter
(gdb) break main
(gdb) run
(gdb) print counter
$1 = 0
(gdb) continue
Counter is at: 1
(gdb) print counter
$2 = 1

詳細な解説

デバッグはパンチカードの時代からある古い技術で、その進化は神の恵みです。Rustは、システムレベルの特性を持つ言語であるため、GDBやLLDBとの統合を備えた独自のツールを提供しています。

Rustコードをデバッグする別の方法には、統合開発環境(IDE)を使用し、内蔵されているデバッガを活用する方法があり、これがより直感的であると感じる人もいます。人気のあるIDEには、Rustプラグイン付きのCLionや、Rust拡張機能付きのVisual Studio Codeがあります。

実装に関しては、Rustはこれらのデバッガが理解できるデバッグシンボルを生成します。これは、コードをステップ実行し、ブレークポイントを設定し、変数を検査する際に非常に重要です。

参照