CLion 2026.2 Help

ローカルソースを使用したリモート

このリモートモードを有効化すると、macOS、Linux、Windows デスクトップ上の CLion で、 SSH 経由で接続されたリモート Linux マシンをターゲットに作業できます。 Raspberry Pi(英語) などのシングルボードコンピューター上の組み込みシステムを含む Linux ベースのターゲット を選択できます。 また、プログラムはクラウドプラットフォーム上や、たとえば Docker コンテナー内で起動することもできます。

このモードでは、IDE インスタンスがローカルで実行され、ソースファイルもローカルクライアントに配置され、リモートホストへの自動同期が行われます。 リモートホスト側では、CLion がホストコンパイラーと CMake/make を使用してコンパイルとビルドを実行し、デバッグにホスト GDB を使用して、リモートターゲットでアプリケーションを実行します。

ワークフローの手順

  1. リモートツールチェーンを作成する:

    • 資格情報を提供し、接続を確認

    • ツールの検出を待ち、必要に応じて手動でパスを指定します。

  2. リモートツールチェーンを デフォルト か、 関連する CMake プロファイルを作成します

  3. 必要に応じて、デプロイエントリのパスマッピングを調整します。

  4. デフォルトプロファイル を使用するか、ビルド、実行、デバッグ用に ステップ 2 からのプロファイル を選択します。

  1. リモートツールチェーンを作成する:

    • 資格情報を提供し、接続を確認

    • ツールの検出を待ち、必要に応じて手動でパスを指定します。

  2. 設定 | ビルド、実行、デプロイ | Makefile でリモートツールチェーンに切り替えます。

  3. 必要に応じて、デプロイエントリのパスマッピングを調整します。

  4. ツール | Makefile | Makefile プロジェクトのクリーンと再ロード を呼び出します。

    構成設定で、 実行可能ファイル をリモートバイナリに指定します。

Windows クライアントの仕様

Windows クライアント で作業するときは、次の点に注意してください。

  • IntelliJ プラットフォームの 問題 のため、 idea.properties ファイルで プロパティidea.case.sensitive.fs=true を設定する必要があります(プロパティファイルにアクセスするには、メインメニューから ヘルプ | カスタムプロパティの編集 ... を選択)、その後、キャッシングリセット付きで CLion を再起動してください(ファイル | キャッシュの破棄 / 再起動 ...)。

  • Windows でのファイル同期の場合、デフォルトでは、CLion は独自の リモートホストアクセス と、 tar ユーティリティを使用したホスト側の圧縮に依存します。 このメカニズムは、macOS および Linux での Rsync ツールによる同期よりも遅く動作します。 Windows で Rsync 同期を有効にするには、 デプロイ設定ダウンロード / アップロード / 同期に rsync を使用する。 チェックボックスをオンにします。

リモート認証情報を使用してツールチェーンを作成する

  1. 設定 | ビルド、実行、デプロイ | ツールチェーン に進みます。

  2. plus icon をクリックし、 リモートホスト を選択します。

    リモートツールチェーンの追加
  3. すでに SSH 構成をお持ちの場合は、 資格情報 リストからそれを選択します。

    SSH 構成の選択

    それ以外の場合は、「資格情報 」フィールドの横にある「 」をクリックします。 開いたダイアログで、SSH 構成を作成し、リモートマシンにアクセスするための資格情報を入力します。

    新しい SSH 構成の作成
  4. 接続を確立した後、CLion はデフォルトのリモートの場所 /usr/bin/cmake /usr/bin/gdb にあるツールを検出しようとします(または手動で指定した場合はフルパスを使用します)。 チェックが正常に終了すると、ツールチェーンは使用可能になります:

    リモートツールチェーンが正しく設定されました
  5. 新しく作成したツールチェーンを デフォルト のツールチェーンにすることができます(このために、 move up move down をクリックしてツールチェーンリストの一番上に移動します)。 デフォルトとして設定すると、リモートツールチェーンは、CLion で作成して開くすべてのプロジェクトに使用されます。

    CMake プロジェクトの場合、リモートツールチェーンをデフォルトとして設定すると、 デフォルトの CMake プロファイル が自動的に接続されるため、個別の CMake プロファイルを構成する必要はありません。

(CMake)対応する CMake プロファイルを作成する

  • 設定 | ビルド、実行、デプロイ | CMake に進みます。

  • plus icon をクリックして新しい CMake プロファイルを作成し、 ツールチェーン フィールドを使用してリモートツールチェーンに接続します:

    リモートツールチェーンの CMake プロファイル

    または、リモートツールチェーンを デフォルトとして設定し、 デフォルトを使用する を選択します。

  • 変更を適用 します。

(Makefile)Makefile 設定でリモートツールチェーンを選択する

  1. 設定 | ビルド、実行、デプロイ | Makefile に進みます。

  2. ツールチェーン フィールドでリモートツールチェーンを選択します。

    Makefile 用のリモートツールチェーンの選択

    または、リモートツールチェーンを デフォルトとして設定し、 デフォルトを使用する を選択します。

  3. 変更を適用 します。

  4. ファイル転送 ツールウィンドウ(表示 | ツールウィンドウ | ファイル転送 )を使用して、ファイル同期の進行状況を監視します。

    アップロード通知

デプロイ構成を確認して調整する

リモートツールチェーンの接続エンティティを作成すると、CLion はそれを 設定 | ビルド、実行、デプロイ | デプロイサーバーアクセス構成リストに追加します。

  • CLion は、プロジェクトコード同期のパスを自動的に構成します。 マッピング タブを使用して、デフォルトのマッピングを変更します(たとえば、デフォルトの tmp フォルダーではなく、コピーされたソースの特定のリモートディレクトリを設定します)。

    ファイル同期のためのパスマッピング
  • CMake プロジェクトの場合、デプロイ設定を変更すると、CLion が自動的に同期をトリガーします。 ファイル転送 ツールウィンドウ(表示 | ツールウィンドウ | ファイル転送 )でプロセスを監視できます。

    ファイル転送ツールウィンドウ

    プロジェクトをリモートマシンにアップロードする際、CLion は最上位の CMakeLists.txt を含むディレクトリをプロジェクトルート(CPP-23995 )として使用します。 最上位の CMakeLists.txt が別のサブディレクトリにある場合は、 マッピング タブでローカルパスを変更します。

    Makefile プロジェクトをリモートマシンにアップロードする場合、CLion は Makefile を含むディレクトリをプロジェクトルートとして使用します(一般チケット CPP-23995 参照)。 Makefile が別のサブディレクトリにある場合は、 マッピング タブでローカルパスを変更します。

  • ローカルマシンとリモートマシンがマウントされたボリュームを共有している場合(例えば Docker コンテナを利用する場合)、あるいは CLion の外部で 3rd-party 同期が設定されている場合、 ソース同期なし でリモート開発をセットアップして不要なファイル重複を回避できます。

    このためには、 接続 タブを開き、接続タイプを ローカルまたはマウント済みフォルダー​​ に変更してから、パスマッピングをセットアップします(Docker の場合、マップされたボリュームを指定します)。

    ソース同期なし

    CLion は CMake の再読み込み時に常に CMake ビルドフォルダーをダウンロードします。 ただし、 ローカルまたはマウント済みフォルダー​​ デプロイタイプが選択されていて、CMake ビルドフォルダーが既存のパスマッピングのいずれかに格納されている場合は、これをスキップできます。

  • SFTP 接続のデプロイプロセスは、Rsync ツールを使用して高速化できます。 macOS および Linux では、Rsync サポートはデフォルトで有効になっていますが、Windows では、 デプロイ設定ダウンロード / アップロード / 同期に rsync を使用する。 チェックボックスを選択して有効にする必要があります。

除外対象パス

デフォルトでは、CLion は CMakeLists.txt にリストされているすべてのディレクトリを解析して同期します。 ただし、 ディレクトリをマーク | 除外 アクションを使用してディレクトリを 除外すると、リモート(デプロイ)では 除外されたパス としてマークされ、リモートマシンとは同期されません。 これは、リモートツールチェーンを設定する前にフォルダーを除外すると自動的に実行されます。

デプロイエントリ設定の専用タブで、除外されたパスを確認および調整できます。

除外対象パス
  • リモートツールチェーンが構成されていてすでにプロジェクトが同期されている状態でディレクトリを除外にマークすると、CLion は除外パスの更新を提案します。 更新後、除外されたフォルダーも同期されます。

    デプロイ除外パスを更新するための提案
  • 以前に除外されていたディレクトリの除外を解除すると、CLion から除外パスの更新と、フォルダーのリモートホストへの再アップロードが提案されます。

    デプロイの除外パスを更新し、フォルダーを再アップロードすることをお勧めする

ヘッダー検索パスの再同期

  • コードを正しく解決するために、CLion は、 ヘッダー検索パス をリモートマシンからローカルクライアントへのすべてのコンテンツと同期します。 たとえば 、標準ライブラリヘッダーはターゲットから取得されますが、CLion エディターでローカルに作業しているかのようにそれらに移動できます。

    ただし、ヘッダー検索パスの同期には時間がかかる可能性があるため、CLion は最初のファイル転送時にのみ自動的に同期を実行します。 その後、CMake または Makefile の再ロードによってトリガーされません。 コンパイラーを切り替えたり、プロジェクトの依存関係を変更したりするたびに、 ツール | リモートホストと再同期 を呼び出してヘッダー検索パスを手動で更新してください。

    自動同期に切り替えることもできます:Registry で clion.remote.resync.system.cache キーを設定してください(ヘルプ | アクションの検索 または Ctrl+Shift+A を押し、 Registry と入力して、キー名で検索)。

    バージョン 2022.3 以降、CLion はリモートホストでの圧縮に pigz を使い、 gzip の代わりにヘッダー検索パスをローカルホストへ同期します。 このマルチスレッド化された gzip の実装により、作業が高速化されます。

ビルド、実行、デバッグ

リモートツールチェーンと対応する CMake プロファイルが設定されたため、Run/Debug 設定スイッチャーで 適切な CMake プロファイルを選択する とで、完全にリモートの方法でアプリケーションとテストを構築、実行、デバッグできます。

リモートの cmake プロファイル

以下では、実行される OS に応じてアプリケーションの出力がどのように変化するかを示すデモを見つけることができます。 macOS をローカルシステムとして、Ubuntu ターゲットにリモートで接続し、OS 名を確認します。 この例では、コードハイライトは OS 識別子に依存しているため、CMake プロファイルや リゾルブコンテキストを切り替えると、CLion が対応するコードブランチをハイライトします:

choose build configuration for remote run
  1. 新しい ネイティブアプリケーション構成を作成するか、既存の構成を編集します。

  2. 実行可能ファイル フィールドで、CLion が リモート バイナリを指すように指定してください。

    構成設定で実行可能なリモート
  3. 構成を保存し、それを使用して Makefile アプリケーションをリモートで実行またはデバッグします。

    環境変数を設定する

    1. リモート OS の環境変数を構成するには、 .bashrc ファイルの先頭の # If not running interactively, don't do anything 行の前に指定します。

      プライマリシェルが bash でない場合は、その特定のシェルの指示に従うか、 PermitUserEnvironment yes sshd_config ファイルに追加し、 sshd サービスを再起動してから、 ~/.ssh/environment で変数を構成します。

    IPv6 サポートを有効にする

    • IPv6(英語) ネットワークに接続するには、CLion JVM オプションで調整する必要があります。

      1. メインメニューから ヘルプ | カスタム VM オプションの編集 を実行します。 開いた *.vmoptions ファイルで、 -Djava.net.preferIPv4Stack=true 行を削除して次の行を追加します。

        -Djava.net.preferIPv4Stack=false -Djava.net.preferIPv6Stack=true -Djava.net.preferIPv6Addresses=true
      2. CLion を再起動してください。

    • 生のアドレスの代わりに ホスト名 を使用するには、Windows で管理者として C:\Windows\System32\Drivers\etc\hosts を開くか、macOS/Linux でスーパーユーザーとして /etc/hosts を開き、必要なアドレスを対応するホスト名にマップします。

      各アドレスは別々の行に配置し、その後に少なくとも 1 つの空白と、空白で区切ったホスト名リストを記述してください。例えば:

      f381::171d:c61c:c7f3:3a56 my.dev.host1 my.dev.host2 f381::171d:c61c:c7f3:3a26%en0 my.dev.host3
    • macOS では、禁止されているネットワークインターフェースのリストも指定する必要があります。

      1. Ctrl+Shift+A を押すか、メインメニューから ヘルプ | アクションの検索 を選択します。 開いたポップアップで、 レジストリ の入力を開始し、対応する項目を選択して Enter を押します。

      2. deployment.macOs.bannedInterfaces キーを見つけて、禁止するインターフェースのコンマ区切りリストを設定します(例: awdl0,bridge0,en1,en2,lo0,p2p0,utun0,utun1)。

    2026 年 7 月 15 日