Qtブログ(日本語)

Qbs 2.2 リリース

作成者: Qt Group 日本オフィス|Dec 31, 2023 12:14:56 PM

Qbsビルドツールのバージョン2.2がリリースされました。

Qbsはコミュニティ主導の言語非依存のビルド自動化システムです。高速で、QMLに基づいた簡単に学べる言語を提供しています。

本稿は「Qbs 2.2 released」の抄訳です。

新機能

前回示唆された通り、このリリースの主な機能はプロジェクトの解決フェーズの並列化です。

プロジェクト解決に複数コア活用

もちろん、ビルドツールは与えられたソースを最大限のCPUでコンパイルします。場合によってはリモートマシンでも実行されます。ただし、ディスク上のプロジェクト構成をビルドグラフに変換する初期プロセスは、通常容易に並列化することができません。それでも、このステップは大規模なプロジェクトの場合、かなりの時間を要するため、並列化を試す価値がありました。

私たちのアプローチは、それぞれの製品(アプリケーション、ライブラリなど)を専用のスレッドで設定することでした。大規模なプロジェクトでは、すべてのホストプラットフォームで2倍から3倍の速度向上が見られており、前のバージョンで既に大幅な速度向上が実現されているため、プロジェクトの解決はQt CreatorなどのIDEでプロジェクトファイルを編集する際のボトルネックではなくなりました。

その他の主な変更点

  • macOS上でのプローブの実行が大幅に高速化されました。
  • モジュールには、Parametersアイテムを含められるようになりました。
  • ModuleProvidersには、PropertyOptionsアイテムを含められるようになりました。
  • Qtモジュールのオンデマンド作成は、プロジェクトが実際に要求するモジュールのみに行われるようになりました。

今後は

パフォーマンスの向上を達成した後、次はツールに取り組んでいます。Qt CreatorなどのIDEがQbsプロジェクトファイルに対して十分に便利な機能を提供していないコードナビゲーションや自動補完などの機能について、いくつかの改善アイデアを持っており、クライアントに依存しない解決策としてLanguage Server Protocolを導入することを検討しています。

お試しください

Qbsはダウンロードページでダウンロードできます。

不具合はバグトラッカーで報告してください。

ライブディスカッションのためにDiscordサーバーに参加してください。

質問や議論にはメーリングリストを使用できます。

ドキュメントWikiも始めるのに良い場所です。

Qbsはさまざまなパッケージリポジトリ(ChocolateyMacPortsHomebrew)から利用可能であり、Qbs開発チームによって各リリースで更新されています。また、Linuxディストリビューションのいくつかでは、ネイティブのパッケージ管理システムを介してインストールすることもできます。詳細については repology.org をご覧ください。

Qbs 2.2.1はQt Creator 12.0.1にも含まれています。

Qbsに貢献

もしQbsを使って満足しているなら、他の人にも教えてください。そして、何か貢献したいと思うかもしれません。Qbsをより良くするためのすべての貢献は非常に歓迎されます。バグの報告や修正を行うこともできますし、新しい機能も大歓迎です。パッチは、Linux、macOS、WindowsでCIボットによって自動的に検証され、ビルドされます。

Qbs Wiki の手順に従って始めましょう。

2.2リリースを実現してくれたすべての方々に感謝します。

  • Christian Kandeler
  • Dmitrii Meshkov
  • Ivan Komissarov
  • Nick Karg
  • Serhii Olendarenko
  • Thiemo van Engelen
  • Thorbjørn Lindeijer