CLion 2019.3ヘルプ

フルリモートモード

フルリモートモードでは、SSH(英語)を介して接続されたリモート LinuxマシンをターゲットにしたmacOS、Linux、またはWindowsデスクトップで作業できます。Raspberry Pi(英語)のようなシングルボードコンピューター上の組み込みシステムを含むLinuxベースのターゲットを選択できます。また、あなたのプログラムはクラウドプラットフォーム上で、あるいはたとえばDockerコンテナーの中で起動することができます。

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

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

  • IntelliJプラットフォームの課題(英語)のため、プロパティidea.case.sensitive.fs=trueidea.properties ファイルに設定し(プロパティファイルにアクセスするには、メインメニューでヘルプ | カスタム・プロパティの編集...を選択)、キャッシュリセット(ファイル | キャッシュの破棄 / 再起動...)でCLionを再起動する必要があります。

  • Windowsでのファイル同期では、CLionは独自のリモートホストアクセスと、tarユーティリティを使用したホスト側での圧縮に依存しています。このメカニズムにより、macOSとLinuxでは同期はrsyncよりも遅くなります。

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

  1. 設定/環境設定 | ビルド、実行、デプロイ | ツールチェーンに移動し、ツールチェーンのリストからリモート・ホストを選択するか、plus icon をクリックしてドロップダウンメニューからリモート・ホストを選択し、新しいツールチェーンを作成します。

  2. 資格情報フィールドの横にある artwork studio icons logcat toolbar settings をクリックします。開いたダイアログで、リモートマシンにアクセスするための資格情報を入力します。

    credentials to access the remote host

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

    remote toolchain configured successfully

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

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

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

  • 設定/環境設定 | ビルド、実行、デプロイ | CMakeに移動し、plus icon をクリックして新しいCMakeプロファイルを作成し、ツールチェーンフィールドを使用してリモートツールチェーンに接続します。

    cmake profile for the remote toolchain

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

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

    deployment configuration for remote host access

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

    path mapping for file synchronization

  • ファイル転送ツールウィンドウ(表示 | ツール・ウィンドウ | ファイル転送)で同期プロセスを監視できます。

    file transfer tool window

ヘッダ検索パスの再同期

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

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

    自動同期に切り替えることもできます。レジストリでclion.remote.resync.system.cacheキーを設定します(ヘルプ | アクションの検索に移動するか Ctrl+Shift+Aを押し、レジストリーと入力して名前でキーを検索します)。

ビルド、実行、デバッグ

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

cmake profile for remote

また、リモート SSHターミナルを使用して、実行/デバッグ構成の起動前ステップとしてリモート外部ツールを実行することもできます。

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

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ではAdministratorとして 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. ヘルプ | アクションの検索に移動してレジストリーと入力します。

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

最終更新日: 2020年2月20日

関連ページ:

Docker

Dockerを使用すると、開発者は本番環境と同じ環境でコードをテストするためにコンテナー内にアプリケーションをデプロイできます。CLionはDockerプラグインを使用してDockerをサポートします。プラグインはバンドルされており、デフォルトで有効になっています。DockerプラグインはCLion...

高度な構成

設定/環境設定ダイアログ で使用可能な標準オプションに加えて、CLionを使用すると、基礎となるプラットフォームおよびJavaランタイムの低レベルの構成を実行できます。これにより、予期しない課題が発生する可能性があり、何をしているのかわからない場合は、CLionのインストールが動作不能になる可能性が...

CMakeプロフィール

CLionでは、CMakeプロジェクトのビルドに必要な設定がCMakeプロファイルに組み込まれます。これには、ツールチェーン、ビルドタイプ、CMakeジェネレーターなどのCMakeオプション、および環境変数が含まれます。複数のプロファイルを使用すると、たとえば、1つのプロジェクトに異なるコンパイラを...

デプロイ

WindowsとLinux用のmacOS用このページで、CLionとサーバー間の相互作用を制御できるサーバーアクセス構成とサーバーグループを作成、編集、削除します。サーバーを使用する場合は常に、サーバーがリモートホスト上にあるかコンピューター上にあるかに関係なく、サーバーアクセス構成を定義する必要が...

状況を解決する

コードの強調表示、使用箇所、リファクタリング、コード生成、コード分析などの検索は、解析のルール、コードの解決方法を決定するプリプロセッサ定義のセットに依存する場合があります。これらのルールは、コンテキストの解決とも呼ばれます。CMakeプロジェクトの場合、解決コンテキストは対応するCMakeプロファ...