Qbs 1.20 ビルド ツールのリリースが発表されました。これは、Qt Company がプロジェクトの開発を離れてから XNUMX 回目のリリースであり、Qbs の開発継続に関心のあるコミュニティによって準備されました。 Qbs を構築するには、依存関係の中に Qt が必要ですが、Qbs 自体はあらゆるプロジェクトのアセンブリを編成するように設計されています。 Qbs は、QML 言語の簡易バージョンを使用してプロジェクト ビルド スクリプトを定義します。これにより、外部モジュールの接続、JavaScript 関数の使用、およびカスタム ビルド ルールの作成が可能な、かなり柔軟なビルド ルールを定義できます。
Qbs で使用されるスクリプト言語は、IDE によるビルド スクリプトの生成と解析を自動化するように適合されています。 さらに、Qbs は makefile を生成せず、make ユーティリティなどの仲介者なしで Qbs 自体がコンパイラーとリンカーの起動を制御し、すべての依存関係の詳細なグラフに基づいてビルド プロセスを最適化します。 プロジェクト内の構造と依存関係に関する初期データが存在することにより、複数のスレッドでの操作の実行を効果的に並列化できます。 多数のファイルとサブディレクトリで構成される大規模なプロジェクトの場合、Qbs を使用したリビルドのパフォーマンスは make よりも数倍優れています。リビルドはほぼ瞬時に行われ、開発者が待ち時間を費やす必要はありません。
2018 年に Qt Company が Qbs の開発を中止することを決定したことを思い出してください。 Qbs は qmake の代替として開発されましたが、最終的には長期的には CMake を Qt のメイン ビルド システムとして使用することが決定されました。 Qbs の開発は現在、コミュニティの力と関心のある開発者によってサポートされる独立したプロジェクトとして継続されています。 Qt Company インフラストラクチャは引き続き開発に使用されます。
Qbs 1.20 の主な革新:
- Qt 6 ブランチを含む、Qt 6.2 フレームワークの完全なサポートが実装されました。
- Qt17 では提供されなくなり、現在は Qbs に含まれている QtScript モジュールが更新され、C++6 に移植されました。
- 異なるプロパティ セットを持つアセンブリの場合は、古いプロパティのリストが提供されます。
- プロファイル全体を追加するためのコマンドが qbs-config に追加されました。これにより、プロパティを個別に追加することなく実行できるようになり、複数の Android SDK がある場合に起動が大幅に高速化されます。
- FreeBSD プラットフォームでのファイル更新時間の誤った処理の問題は解決されました。
- C/C++ サポートが改善されました。 COSMIC コンパイラー (COLDFIRE/M68K、HCS08、HCS12、STM8、および STM32) および Digital Mars ツールのサポートが追加されました。 MSVC コンパイラの場合、cpp.enableCxxLanguageMacro プロパティが実装され、「c++20」値のサポートが cpp.cxxLanguageVersion に追加されました。
- Android プラットフォームの場合、Android.sdk.dexCompilerName プロパティを設定することで、dx の代わりに d8 dex コンパイラーを使用するためのサポートが実装されました。 Android 上で Qt ライブラリを実行するためのプログラムである Ministro が廃止されました。パッケージを作成するためのツールキットが aapt から aapt2 (Android Asset Packaging Tool) に更新されました。
出所: オープンネット.ru