CLion 2024.1 ヘルプ

CMakeLists.txt

CMakeLists.txt ファイルには、プロジェクトのソースファイルとターゲット(実行可能ファイル、ライブラリ、その両方)を記述する指示文と命令のセットが含まれています。

新しいプロジェクトを作成すると、CLion は自動的に CMakeLists.txt ファイルを生成してプロジェクトのルートディレクトリに配置します。プロジェクトを開くには、CLion を最上位の CMakeLists.txt にポイントしてプロジェクトとして開くを選択します。

以下の例は、単純な「Hello, World」プロジェクトの CMakeLists.txt ファイルを示しています。

cmake_minimum_required(VERSION 3.13) # CMake version check project(simple_example) # Create project "simple_example" set(CMAKE_CXX_STANDARD 14) # Enable c++14 standard # Add main.cpp file of the project root directory as a source file set(SOURCE_FILES main.cpp) # Add executable target with source files listed in SOURCE_FILES variable add_executable(simple_example ${SOURCE_FILES})

CMakeLists.txt ファイルはエディターで直接編集できます。編集後は必ずプロジェクトを再ロードしてください。自動再ロード機能はデフォルトでは無効になっていますが、設定 | ビルド、実行、デプロイ | CMake編集時に CMake プロジェクトを自動的に再ロードするチェックボックスを設定することで有効にできます。

サブディレクトリ CMakeLists.txt ファイル

複雑な構造のプロジェクトの場合は、サブディレクトリ CMakeList.txt ファイルを作成して、サブプロジェクトのビルド、コンテンツ、ターゲットルールを記述することができます。

サブディレクトリ CMakeLists.txt によって追加されるターゲットのタイプは、モジュールのロールに応じて異なります。

CMakeLists.txt files in subdirectories

CMakeLists.txt ファイルテンプレート

新規プロジェクトウィザードを使用して CMake または CMake ベース(CUDAQt)プロジェクトを作成すると、CLion はプロジェクトの種類と設定に応じて異なるテンプレートを使用して CMakeLists.txt を生成します。これらのテンプレートは、設定 | エディター | ファイルおよびコードテンプレートその他タブで微調整できます。

File templates for new CMake projects

テンプレートテキストを編集するときは、一般的な定義済み変数と次の CMake 固有の変数を使用できます。

${CMAKE_DEFAULT_PROJECT_FILE}

プロジェクトの main.cpp / main.c / libary.cpp / library.c ファイル。

${CMAKE_LANGUAGE_VERSION}

選択した言語標準。

${CMAKE_MAJOR_VERSION}

サポートされている CMake の最小バージョンのメジャー番号。例: バージョンが 3.20 の場合、この変数は 3 に対応します。

${CMAKE_MINOR_VERSION}

サポートされている CMake の最小バージョンのマイナー番号。例: バージョンが 3.20 の場合、この変数は 20 に対応します。

${CMAKE_LIBRARY_TYPE}

共有ライブラリの SHARED

${QT_VERSION}

選択した Qt バージョン。

${REQUIRED_LIBS}

選択したプロジェクトタイプに必要な Qt ライブラリ。デフォルトでは、Qt Console Executable の場合は Core、Qt Widgets Executable の場合は CoreGuiWidgets です。

プロジェクトビューのコンテキストメニューに、新規 | CMakeLists.txt を介して既存のプロジェクトに追加できる CMake スクリプトのテンプレートもあります。デフォルトでは、このテンプレートは空です。設定 | エディター | ファイルおよびコードテンプレートファイルタブで同じ変数を使用して編集できます。

File template for a new CMakeLists.txt file

CMakeLists.txt でのコーディング支援

コード補完

CLion は、CMakeLists.txt 内のほとんどの要素にコード補完を提供します。例: find_package() コマンドを記述すると、CMake にバンドルされているパッケージのリストを取得できます。

Completion in CMake

CMake の最小バージョン用のクイックフィックス

CMake の必要最小限のバージョンを素早く調整できます。CMake 出力で警告を見つけて、修復をクリックします。

Quick fix for CMake minimal version

CLion は cmake_minimum_required() コマンドのバージョンを変更します。

CMake minimal version changed

生成メニューからターゲットを追加する

  1. Alt+Insert を押してターゲットタイプを選択します。

    Generate menu for CMake
  2. 新しいターゲットに追加するファイルを選択します:

    Choose target files
  3. CLion は add_executable または add_library コマンドを追加します。

    The result of adding a library target via the Generate menu

CMake のライブテンプレート

ライブテンプレートを使用して、構造またはコマンドをすばやく挿入します。例: exe と入力し、Tab を押して実行可能なターゲットを追加します。

CMake live template for add_executable
add_executable template inserted

CMake ライブテンプレートの完全なリストは設定 | エディター | ライブテンプレート | CMake で見つかります。

パラメーター情報ポップアップ

パラメーター情報ポップアップには、入力時に CMake コマンドの署名バリアントが表示されます。

Parameter info for CMake

デフォルトでは、最初の括弧を入力してから 1 秒 (1000 ミリ秒) 以内にポップアップが表示されます。これはパラメーター情報の設定で変更できます。

パラメーター情報を手動で呼び出すには、Ctrl+P を押します。

クイックドキュメントポップアップ

クイックドキュメントポップアップは、CMake コード内の要素に関する詳細情報を取得できます。呼び出すには、マウスホバーを使用するか、Ctrl+Q を押します。

例: 補完候補のクイックドキュメントを表示できます。

Quick doc in CMake completion

コードの折りたたみ

CMake スクリプトでの折りたたみ / 展開は、マクロと関数、if-else 句、ブロック、コメント、任意のコード選択で使用できます (これを機能させるには、設定 | エディター | 一般 | コードの折りたたみカスタム折りたたみ領域を必ず有効にしてください)。

CMake code folding

構造ビュー

CMake の構造ビューには、スクリプトで使用された変数、関数、マクロ、ターゲットが表示されます。それを開くには、Alt+7 (ツールウィンドウの場合) または Ctrl+F12 (ポップアップの場合) を押します。

Structure view for CMake

カスタマイズ可能な構文のハイライト

設定 | エディター | カラースキームの切り替え | CMake で CMake ファイルの色とフォントスキームを調整できます。

Color scheme settings for CMake

CMake ファイルのコードスタイル

設定 | エディター | コードスタイル | CMake では、CMake ファイルに適用されるコードスタイルを調整できます。特定の設定を変更すると、それがコードに与える影響がプレビューペインに表示されます。

CMake code style settings

関連ページ:

CMake プロジェクトを作成する / 開く

CMake プロジェクトを最初から作成するウェルカム画面で新しいプロジェクトをクリックするか、メインメニューからを選択します。左側のペインで C++ 実行ファイルを選択します。プロジェクト名と言語標準を設定します。作成をクリックします。CLion は、次のコマンドを含む単一のソースファイル main.cpp とルート CMakeLists.txt を含むスタブプロジェクトを生成します。CMake の最低限必要なバージョンを指定します。CLion にバンドルされている CMake のバージョンに設定されてい...

CMake の読み込み / 再読み込み

CMake をロードするプロジェクトルートで CMakeLists.txt ファイルが検出されると、CLion はそのファイルを自動的に読み込みます。CMakeLists.txt ファイルを手動でロードするには、プロジェクトツリーでファイルを右クリックし、コンテキストメニューから CMake プロジェクトを読み込むを選択します。CMakeLists.txt の変更時に CMake を再ロードするデフォルトでは、CMakeLists.txt ファイルに変更を加えると、CLion は、プロジェクトを再ロードす...

CUDA プロジェクト

CUDA(Compute Unified Device Architecture)は、NVidia による並列コンピューティングプラットフォームおよびプログラミングモデルです。CUDA 対応 GPU を操作するための C/C++ 言語拡張機能と API を提供する CLion は CUDA C/C++ をサポートし、コードインサイトを提供します。また、CLion は、新規プロジェクトウィザードを使用して CMake ベースの CUDA アプリケーションを作成できます。CLion の CUDA プロジ...

Qt プロジェクト

Qt は、GUI アプリケーションを作成するためのクロスプラットフォームの C++ フレームワークです。Qt は独自のビルドシステム qmake を使用し、バージョン Qt4 以降の CMake でのビルドもサポートしています。純粋な Qmake プロジェクトを CLion に直接インポートすることはできません。ただし、CMake に変換すると、通常の CMake アプリケーションとして開いて管理できます。新規プロジェクトウィザードを使用して、CLion で CMake ベースの Qt プロジェクトを作成する...

ファイルテンプレート変数

ファイルテンプレートには変数を含めることができます。変数は、テンプレートが適用されるときに値に置き換えられます。変数は、ドル記号で始まり、その後に変数名が続く文字列です。変数名は、オプションで波括弧で囲むことができます。たとえば、とは同じ変数の異なる表記法です。事前定義された変数とカスタム変数は、テンプレート本体とファイル名で使用できます。例: テンプレートのファイル名フィールドにと入力した場合、4 月に作成すると、結果のファイルの名前はになります。ここで、は事前定義された変数です。代わりにカス...

ライブテンプレート

ライブテンプレートを使用して、ループ、条件、宣言、print ステートメントなどの一般的な構造をコードに挿入します。コードスニペットを展開するには、対応するテンプレートの省略形を入力してを押します。を押し続けると、テンプレート内の 1 つの変数から次の変数に移動します。を押して、前の変数に移動します。次のデモは、ライブテンプレートの使用箇所と、関数の抽出、パラメーターの抽出、ラムダパラメーターを抽出するリファクタリングを示しています。ライブテンプレートの種類:次のタイプのライブテンプレー