リモート開発
CLion のリモート開発には複数のオプションがあり、それぞれ特定のセットアップをターゲットにしています:
WSL2,
Docker (ローカルで実行 *)
gdbserver/lldb-server デバッグの 2 つのバリアント、 リモートデバッグ (GDB/LLDB) および リモート GDB サーバー (GDB のみ)。
この ウェビナー記録 をご覧いただき、CLion でのリモート開発オプションの概要については下記の表をご参照ください:
以下の表は、ローカル OS とリモート OS の組み合わせ、使用しているプロジェクトモデル、ターゲット上でのビルドが必要かどうかなど、さまざまな要因に応じてどのリモートオプションを選択するかを決定できます。
リモートオプション: システムと IDE の設定
ゲートウェイとローカルソースを使用したリモート
Gateway を使用したリモート | ローカルソースを使用したリモート | |
|---|---|---|
IDE 実行 | リモート | ローカル |
ローカル OS | macOS/Linux/ ウィンドウ | macOS/Linux/ ウィンドウ |
リモート OS | Linux (WSL2 を含む) | Linux |
接続プロトコル | SSH/ スペース統合 /Gitpod | SSH |
必要なツール | ローカルマシン上の CLion または スタンドアロンゲートウェイ リモートマシン上の CLion (ゲートウェイ経由でインストール可能) | macOS/Linux クライアント用の rsync(英語); |
ソースの場所 | リモート | ローカル |
同期 | 必要ありません | すべてのソースに対して自動。 ヘッダー検索パスの手動再同期 |
ビルド | リモート | リモート |
実行 / デバッグ | リモート | リモート |
WSL2 と Docker
WSL2 | Docker | |
|---|---|---|
ローカル OS | Windows | macOS/Linux/ ウィンドウ |
リモート OS | コンテナー化された OS ディストリビューション | |
接続プロトコル | - | OS 用 Docker |
ソースの場所 | ローカル | マウントされたフォルダー |
同期 | 必要ありません | 自動で |
ビルド | WSL について | コンテナー内 |
実行 / デバッグ | WSL について | コンテナー内 |
リモートデバッグ
リモートデバッグ | リモート GDB サーバー | |
|---|---|---|
ローカル OS | GDB 用の macOS/Linux/Windows; LLDB の macOS/Linux | macOS/Linux/ ウィンドウ |
リモート OS | GDB の gdbserver をサポートするすべての OS。 macOS/Linux または LLDB をサポートする別の lldb サーバー | gdbserver および SSH をサポートするすべての OS |
接続プロトコル | TCP/UDP またはシリアル回線 | TCP/UDP またはシリアル回線。 アップロード用の SSH |
必要なツール | ターゲット上の gdbserver または lldb-server(英語) | ターゲット上の gdbserver |
ソースの場所 | ローカル ; シンボルファイルもローカルに配置 | ローカル |
同期 | 手動 | バイナリの自動 |
ビルド | 指定なし | ローカル (クロスコンパイルが必要) |
実行 / デバッグ | プログラムは gdbserver/lldb-server でリモートで実行されます。 CLion の GDB/LLDB は実行中のプロセスに接続し、ローカルでデバッグします | プログラムは gdbserver でリモートで実行されます。 CLion の GDB は実行中のプロセスに接続し、ローカルでデバッグします |
リモートオプション: プロジェクトレベル設定
ゲートウェイとローカルソースを使用したリモート
Gateway を使用したリモート | ローカルソースを使用したリモート | |
|---|---|---|
プロジェクトフォーマット | CMake/Compilation database/Makefile/Meson | CMake/Makefile/Meson |
ツールチェーン | システムツールチェーン | |
パスマッピング | 必要ありません | 自動的に作成され デプロイエントリでカスタマイズ可能 |
WSL2 と Docker
WSL2 | Docker | |
|---|---|---|
プロジェクトフォーマット | CMake/Compilation database/Makefile/Meson | CMake/Makefile/Meson |
ツールチェーン | WSL | Docker |
パスマッピング | 必要ありません | コンテナー設定で構成可能 |
リモートデバッグ
リモートデバッグ | リモート GDB サーバー | |
|---|---|---|
プロジェクトフォーマット | 任意 | CMake |
ツールチェーン | 指定なし | macOS/Linux のデフォルト。 Windows 上の MinWG、Cygwin、WSL。 リモートおよび Docker ツールチェーンも利用可能 |
パスマッピング | 自動的に作成されない 実行 / デバッグ構成で設定する必要があります | 自動的に作成されない 実行 / デバッグ構成で設定する必要があります |