QDocのためのClangのインストール
QDocは、C++ファイルを解析するときや、関数シグネチャの解析にClangを使用します。ClangはLLVM Compiler Infrastructure Projectの一部です。ソースからQDocをビルドする場合は、Clang 17.0以降をインストールする必要があります。
インストールオプション
Qt のビルド済みパッケージ(推奨)
Qt は公式にサポートされている LLVM/Clang のビルド済みパッケージを提供しています:
- https://download.qt.io/development_releases/prebuilt/libclang/qt/ からダウンロードしてください。
- Windows、macOS、Linux で利用可能です。
- LLVM/Clang ライブラリの静的リンクをサポートします。
- QDoc の要件と Qt の CI にバージョンを合わせています。
注意: Windows では、Qt のビルド済みパッケージは Release ビルドのみをサポートしています。
システムパッケージマネージャ
Qtのプリビルドパッケージの代替として、システムパッケージマネージャを通してClangをインストールすることができます。QDocは特にClangコンパイラ・ライブラリとそのCMake設定ファイルを必要とします。依存関係は以下の通りです:
llvm-<version>
(インフラ)clang-<version>
(コンパイラとライブラリ)libclang-<version>-dev
(開発ヘッダー)libclang-cpp<version>-dev
(C++ API開発ファイル)
以下は、一般的なLinuxディストリビューションとmacOSにおけるパッケージマネージャの典型的な起動方法の一覧である。
Linux
LLVMとClangは、ほとんどのディストリビューションで別々のパッケージになっている。ClangConfig.cmakeファイルを提供する(バージョン管理された)-dev
パッケージを確実にインストールしてください。
- Debian/Ubuntu:
apt install libclang-dev clang libclang-cpp-dev
- Fedora/RHEL:
dnf install clang-devel
- Arch Linux:
pacman -S clang llvm
macOS
Homebrewのllvm式を使う:
brew install llvm
- ARM64 Mac用:で設定する
LLVM_INSTALL_DIR="/opt/homebrew/opt/llvm"
- Intel Mac の場合で設定します。
LLVM_INSTALL_DIR="/usr/local/opt/llvm"
Note: Qt のビルドシステムは CMake にClangConfig.cmake を探すように指示します。パッケージがこのファイルを提供していることを確認してください。https://releases.llvm.org/download.htmlからのビルド済みバイナリは、QDoc に必要なコンポーネントが欠落しているため使用できません。
コンフィギュレーション
QtのconfigureスクリプトがLLVM/Clangライブラリを見つけられない場合、プラットフォーム固有のインストールガイダンスと、あなたのシステムに必要な正確な設定コマンドが表示されます。
LLVM のインストール場所を手動で指定するには、次のようにします:
LLVM_INSTALL_DIR
変数を設定します:configure LLVM_INSTALL_DIR="/path/to/llvm" FEATURE_clang=ON
- または、
CMAKE_PREFIX_PATH
に追加します:configure CMAKE_PREFIX_PATH="/path/to/llvm" FEATURE_clang=ON
LLVM/Clangライブラリをインストールした後は、必ずFEATURE_clang=ON
。
© 2025 The Qt Company Ltd. 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.