このページでは

Clangd

Clang プロジェクトには、C 言語ファミリーのソースファイルを解析し、詳細な診断情報を提供するライブラリが含まれています。clangdインデックスは、コード補完などのサービスに対して正確かつ完全な結果を提供します。

clangd の設定を行うには、Preferences >C++ >Clangd に移動し、「Use clangd 」を選択します。

C++の設定にある「Clangd」タブ

次の表に、利用可能な設定項目を説明します。

設定項目説明
Path to executableclangd バージョン 14 以降のパスを指定します。
Background indexingOff を選択すると、高速ですが精度がやや低い組み込みのインデクサーが使用されます。グローバルシンボル検索において、精度と速度のどちらを重視するかによって、インデックス作成の優先順位を設定します。
Per-project index location各プロジェクトのインデックスファイルを保存するフォルダを指定します。compile-commands.json ファイルもここに保存されます。
Per-session index location各セッションのインデックスファイルを保存するフォルダを指定します。
Header/source switch modeヘッダーファイルとソースファイルの切り替えに使用する C/C++ バックエンドを選択します。Try Both は、組み込みのコードモデルで何も見つからない場合、clangd を使用します。
Worker thread count使用するコア数を固定で設定します。デフォルトでは、clangd は未使用のコアをすべて使用します。
Insert header files on completionシンボルの補完時にヘッダーファイルを挿入します。
Update dependent sourcesヘッダーファイルを編集する際、そのヘッダーファイルをインクルードしているすべてのソースファイルを再解析します。ヘッダーファイルの保存時にのみ再解析を行うようにするには、このオプションのチェックを外してください。
Use externally provided compilation databaseQt Creator によって作成されたコンパイルデータベースの代わりに、外部のコンパイルデータベースを使用します。指定されたインデックス場所に `compile-commands.json ` ファイルを配置し、プロジェクトの状態と常に同期させておいてください。
Completion results補完結果の最大数。制限を解除するには 0 に設定します。
Completion ranking model補完候補の順位付けに使用する clangd モデルを選択します。Decision Forest (デフォルト)は機械学習を使用します。Heuristic は手作業で作成されたものです。
Document update thresholdQt Creator がドキュメントの変更をサーバーに送信するまでの待機時間。
Ignore files greater than解析対象のファイルの最大サイズ。有効にすると解析が高速化されます。
Diagnostic configuration実行する Clang チェック。チェックを編集するにはこれを選択します。
Sessions with a Single Clangd Instanceインデックス作成に単一の clangd プロセスを使用すべきセッションを追加します。

Clang チェック

Diagnostic configuration 」フィールドの値を選択すると、「Diagnostic Configurations 」ダイアログが開き、そこで実行するチェックを選択および編集できます。

[診断設定] ダイアログ

組み込みのチェックを使用するほか、「Copy 」を選択してそれらのコピーを作成し、必要に応じてコピーを編集することもできます。

  • Build-system warnings ビルドシステムで指定された警告を表示します。
  • Checks for questionable constructs は、-Wall および-Wextra のチェックを組み合わせて、簡単に回避できる疑わしい構文やその他の問題をチェックします。

Clang のチェックは-W で始まります。各チェックには、-Wno で始まる否定形も存在します。

一部のオプションは他のオプションを有効にする点に注意してください。詳細については、「警告の要求または抑制に関するオプション」または GCC もしくは Clang のマニュアルページを参照してください。

「clangd 設定の指定」、「Clang コードモデル」、および「コードモデルも参照してください

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.