Qt Creator 12 - CMakeアップデート
10月 14, 2023 by Qt Group 日本オフィス | Comments
本稿は「Qt Creator 12 - CMake Update」の抄訳です。
Qt Creator 12における新しいCMakeの機能と修正事項をご紹介します。
CMakeデバッガー
CMakeはバージョン3.27以降、インタラクティブなデバッガーをサポートしています。
Qt Creator 12では、Debug Adapter Protocolのサポートが追加され、最初のサポートされるケースの一つがCMakeデバッガーです。
CMake プロファイラ
以前、CMake 3.18の新機能記事でCMakeプロファイラについて言及しました。Qt Creator 12では、Chrome Trace Format Visualizerとの透明な統合が行われています。
ホバーヘルプ
Qt Creatorは以前からCMakeの関数に対するF1サポートを提供してきました(ただし、CMakeとともにCMake.qchをインストールする必要があります)。
Qt Creator 12では、この機能がさらに洗練されています。F1はコマンドだけでなく、変数、プロパティ、ポリシー、環境変数、およびCMakeの検索とインクルードモジュールにも対応します。
さらに、reStructuredText rstヘルプファイルも解析され、ホバーヘルプのツールチップとして表示されます。これは、上記のすべてのケースにおいて、コード補完を行う場合にも適用されます。
ナビゲーション
Qt Creatorは以前、プロジェクト内のソースファイルに限定された1つのナビゲーション(F2)ケースのみをサポートしていました。
Qt Creator 12では、以下の項目について拡張されました。
- 関数とマクロとオプション
- プロジェクトのターゲット
- CMake独自の検索とインクルードモジュール
- ローカル変数(set、listによって作成されたもののみ)
- インポートされたターゲット
これらの機能を使用するためには、正常なプロジェクトの設定が必要です。
スニペット
Qt CreatorはCMakeのコードスニペットを表示する機能を持っていましたが、実際にはどのスニペットも同梱されていませんでした。Qt Creator 12には、5つのCMakeコードスニペットが付属しています。
コード補完
Qt Creator 12は、KSyntaxHighlightingエンジンのメタ情報を使用して、CMakeコマンドのコード補完特有の引数を提供します。
例えば、set_source_files_propertiesでは、ソースファイルのプロパティのみが提案され、テストやターゲットのプロパティは提案されません。
以下のCMake固有のトリガートークンは以下の通りサポートされています:
- 変数用の ${
- ジェネレータ式用 $<
- 環境変数用 $ENV{
ローカル CMake Find パッケージ
外部依存関係を持つCMakeプロジェクトでは、モダンなCMakeのアプローチは、インポートされたターゲットを公開するFind<package>.cmakeモジュールを使用することです。CMakeはこれについてのドキュメントをA Sample Find Moduleで提供しています。
これらのFindモジュールは通常、${CMAKE_CURRENT_SOURCE_DIR}/cmakeディレクトリに配置され、これはCMAKE_MODULE_PATHリスト変数に追加されます。
Qt Creator 12では、これをコードスニペットとして提供しています。
この動作を示すために、Using libclang to Parse C++ (aka libclang 101) の例を使用しました。なお、Windowsのllvm.orgリリースにはCMakeの検索モジュールが含まれておらず、単純にfind_packageを使用してlibclangライブラリを見つけることはできません。詳細については、#47222を参照してください。
なお、C:\Program Files\LLVMの下には、libclangのヘッダーファイルとライブラリを提供するincludeディレクトリとlibディレクトリがあります。
エラー/警告メッセージのサポートの向上
Qt Creator 12では、複数行のエラーメッセージ/警告メッセージが表示され、呼び出しスタックが適切な順序で表示されます。
出力メッセージ
Qt Creator 12では、必要に応じてCMakeのメッセージのみをフィルタリングできるように、すべての出力メッセージの先頭に[cmake]が付けられます。
cmake-format ローカル設定ファイル
そして最後に、Qt Creator 12では、ローカルな.cmake-format[.py|json]設定ファイルをサポートしています。
Blog Topics:
Comments
Subscribe to our newsletter
Subscribe Newsletter
Try Qt 6.8 Now!
Download the latest release here: www.qt.io/download.
Qt 6.8 release focuses on technology trends like spatial computing & XR, complex data visualization in 2D & 3D, and ARM-based development for desktop.
We're Hiring
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.