複雑なリモートシナリオ
この記事では、リモートシステムで CMake または Makefile アプリケーションを構築してから、別のリモートシステムでデバッグする必要がある場合の一般的な推奨事項を示します。
CLion はローカルで実行されています(以下、 ローカルマシンと呼びます)
ビルドは、Docker コンテナーまたは別のシステム内でリモートで実行されます (ビルドマシン)
アプリケーションは、組み込みデバイスまたはさらに別のシステムで起動されます (ターゲットマシン)
1。 ビルドツールチェーンを設定する
リモートマシン上、または Docker コンテナー内で、アプリケーションが構築されている場所に対応するタブを選択します。
で、 リモートツールチェーンを作成し 、ビルドマシンにアクセスするための資格情報を提供します。

で、Docker ツールチェーンを 作成します。

作成したツールチェーンを CMake プロファイルに接続するか(デバッグプロファイルであることを確認してください)、 Makefile の設定で選択します。

プロジェクトをビルドしてバイナリを取得します。
リモートツールチェーンの場合、バイナリはビルドマシンで作成され、ローカルマシンに自動的にダウンロードされません。 後で、必要なコピーを実行するための外部ツールを追加します。
Docker の場合、バイナリは自動的にローカルマシンに同期されます。 ビルド後すぐに、マップされたディレクトリのバイナリを確認できます。
2。 デバッガーを準備する
ビルドマシン に マルチアーチ GDB(英語) 実行可能ファイルがあることを確認してください。
例: Ubuntu でビルドする場合は、実行することでマルチアーチ GDB をインストールできます
sudo apt install gdb-multiarchツールチェーン設定で、 デバッガー フィールドでマルチアーチ GDB が選択されていることを確認します。 パスが自動的に検出されなかった場合は、パスを手動で指定してください。
3。 バイナリをダウンロードするための外部ツールを作成する (Docker はスキップ)
ビルドマシンからローカルシステムにバイナリをダウンロードする 外部ツールを作成します。
例: その ために scp を使用できます:

パス マッピングパス マッピングパス マッピングパス マッピング を確認してください。ビルドマシンからバイナリをダウンロードするディレクトリは、プロジェクトルートからの相対パスが同じである必要があります。
ツールを構成した後、 を使用して手動で呼び出し、初めてダウンロードを実行します。 ローカルシステムのバイナリを確認してください。
4。 リモート GDB サーバー構成をセットアップする
リモート GDB サーバー構成を作成し、次の設定を入力してください:
実行可能ファイル - ダウンロードした(ローカル)バイナリを選択します
GDB - ビルドマシンから GDB を選択します (ツールチェーンで指定されたもの)
資格情報 - ターゲットマシンにアクセスするためのクレデンシャルを提供します
起動前 エリア(Docker のスキップ)- ビルドステップの後に、ダウンロード用の外部ツールを追加します

これで、そのリモート GDB サーバー構成を起動すると、次の一連の手順が実行されます。
プロジェクトは、リモート /Docker ツールチェーンを使用してビルドマシン上にビルドされます。
Docker の場合、バイナリはローカルにコピーされます。 それ以外の場合は、外部ツールによってローカルシステムにダウンロードされます。
次に、バイナリがターゲットマシンにアップロードされ、 gdbserver で起動されます。
CLion デバッガー(ビルドマシンの GDB として構成したもの)は、ターゲットマシンの gdbserver に接続します。