RustRover 2026.1 Help

リモートデバッグ

リモートデバッグ 構成を使用すると、 gdbserver または lldb-server でリモートデバッグできます。 デバッグ情報を含む実行可能ファイルがすでにあり、RustRover にプロジェクトのビルドをさせる必要がない場合は、この構成を使用してください。 この構成は、特定のビルドシステムまたはプロジェクト形式に依存しません。

リモートデバッグ構成を使用すると、 任意のビルドシステムでビルドされたアプリケーションをリモートでデバッグできます。 必要なのは、デバッグシンボルがローカルマシン上に存在していることだけです。

ターゲットプラットフォーム

gdbserver をサポートしている場合、ターゲット環境に制限はありません。

プログラムは、 Raspbian OSRaspberry Pi OS ガイドを参照)などの Linux ベースの組み込み OS を含む任意の OS、クラウドプラットフォーム、または Docker コンテナ内でリモート実行できます。 リモート gdbserver プロトコルに準拠した GDB スタブ に接続できます。たとえば、OS カーネルをデバッグするための Qemu や、フラッシュ済みファームウェアをデバッグするための OpenOCD です。

デフォルトでクライアントデバッガーとして使用される RustRover にバンドルされた GDB は、 マルチアーキテクチャ サポートで構築されているため、さまざまな Linux/Windows/macOS や組み込み環境でのリモートクロスプラットフォームデバッグに適しています。 サポートされているターゲットの完全なリストは以下を参照してください。

バンドルされた GDB でサポートされているリモートターゲット

i686-pc-mingw32 i686-w64-mingw32 x86_64-w64-mingw32 i686-linux-gnu x86_64-linux-gnu aarch64-linux-gnu alpha-linux-gnu arm-linux-gnu arm-linux-gnueabi arm-linux-gnueabihf hppa-linux-gnu ia64-linux-gnu m68k-linux-gnu m68k-rtems mips-linux-gnu mipsel-linux-gnu mips64-linux-gnu mips64el-linux-gnu powerpc-linux-gnu powerpc-linux-gnuspe

    macOS、Linux、Android、Apple TV/Apple Watch、および lldb-server をサポートするその他のプラットフォームをターゲットにすることができます。 LLDB ドキュメントの ローカルシステム(英語)を参照する

    リモートデバッグの概要

    1. RustRover のホストで、 リモートデバッグ構成を作成します

    2. ターゲットマシンでバイナリと gdbserver/lldb-server で起動するを準備します。

    3. RustRover のホストで、 デバッグセッションを開始します

    リモートデバッグ構成を作成する

    1. 実行 | 実行構成の編集 に移動して をクリックし、テンプレートのリストから リモートデバッグ を選択します。

      リモート実行 / デバッグ構成
    2. クライアントデバッガー (バンドルされた GDB/ バンドルされた LLDB またはカスタム GDB バイナリ) を選択し、対応する設定を指定します。

      • 'target remote' 引数 – リモートシステムのアドレスは次の形式です。

        <host>:<port>

        例:

        localhost:9999

        代替形式(英語)を使用することもできます。

      • シンボルファイル。 これはデバッグシンボルを含むファイルへのローカルマシンのパスであり、ターゲットで実行中の実行可能ファイルの未ストリップコピー、またはデバッグ情報のみを含む ELF ファイルである場合があります。

        最近のバージョンの GDB クライアントは gdbserver からシンボルを自動的に転送できるため、ターゲット上で実行されている実行ファイルがストリップされていないバイナリである場合は、このフィールドを空のままにしておくと、うまく機能する可能性があります。

      • Sysroot は、GDB クライアントによって、ローカルシステム上のデバッグシンボルを含むターゲットライブラリのコピーにアクセスするために使用され、ブレークポイントを設定したり、ライブラリコード内のソース行を検索したりできるようになります。

      • 「プロセス接続」URL。 次の表記を使用します。

        connect://<host>:<port>

        例:

        connect://localhost:9999
      • シンボルファイル。 これはデバッグシンボルを含むファイルへのローカルマシンのパスであり、ターゲットで実行中の実行可能ファイルの未ストリップコピー、またはデバッグ情報のみを含む ELF ファイルである場合があります。

        RustRover は g[dbserver] モードで lldb-server を使用しており、すべてのファイルを手動で転送する必要があります。

      • Sysroot は、LLDB クライアントによって、ローカルシステム上のデバッグシンボルを含むターゲットライブラリのコピーにアクセスするために使用され、ブレークポイントを設定したり、ライブラリコード内のソース行を検索したりできるようになります。

      • パス マッピング。 このペインを使用して、ホスト上のローカルパス (ローカル 列) にマップされるターゲットマシン上のパス (リモート 列) を指定します。

    gdbserver/lldb-server でプログラムをリモートで起動する

    ターゲット上でアプリケーションを起動するには、リモートターミナルを使用するか、RustRover に組み込まれた SSH ターミナル を呼び出し、 ポート転送を実行します

    次のコマンドを使用して gdbserver を実行します。

    gdbserver <TCP hostname>:<port> <program name & args>

    例:

    gdbserver :9999 ./target/debug/demo
    リモート ssh ターミナル

    あるいは、シリアルポート経由で接続することもできます。

    gdbserver <device name> <program name & args>

    シリアルライン接続を確立する場合は、代わりにデバイス名を指定します。

    リモートマシンで、lldb-server を gdbserver モードで起動します。

    lldb-server gdbserver <host>:<port> <program name & args>

    例:

    lldb-server gdbserver :9999 ./target/debug/demo

    macOS では、 debugserver を lldb-server として使用します。

    debugserver <host>:<port> <program name & args>

    例:

    debugserver localhost:9999 ./target/debug/binary

    起動すると、gdbserver/lldb-server はエントリポイントでプログラムを一時停止し、クライアントデバッガーが接続されるのを待機します。

      リモートデバッグセッションを開始する

      RustRover でコードにブレークポイントを配置したら、 リモートデバッグ 構成を選択し、デバッグ セッションを開始します。

      RustRover のデバッガーは実行中のリモートプロセスに接続します。

      gds/gdbserver によるデバッグ

      これで、ローカルで実行されているかのようにコードをインスペクションできます (ステップ実行変数のインスペクションなど)。

        2026 年 5 月 22 日