Qtリリース

Qt フレームワークは、共通のバージョン番号でリリースされる様々なモジュールやツールで構成されています。以下では、Qt のバージョン管理スキームと、それに関連する互換性の約束について説明します。最後に、典型的なリリーススケジュールを紹介し、長期サポート(LTS)リリースとサポート期間を紹介します。

注意: Qt CreatorQt Design Studio のようなツールや、Qt for MCUs のような関連製品は独立してリリースされ、独自のバージョン体系とリリーススケジュールを持っています。

バージョン管理

Qt ではセマンティック・バージョニングを採用しています。各リリースはメジャーマイナーパッチ番号で識別され、ドットで区切られています。例えば、Qt 6.8.1.

メジャーリリースでは メジャーバージョン番号が増加し、マイナーバージョン番号とパッチ番号はゼロにリセットされます。メジャーリリースでは、Qt の機能、モジュール構造、アプリケーションプログラミングインタフェース(API)の一部が作り直されます。

マイナーリリースでは マイナーバージョン番号が増加し、パッチバージョン番号はゼロにリセットされます。マイナーバージョンには、新機能のほか、さまざまな修正や改良が含まれています。

パッチ・リリースはパッチ・バージョン番号だけをインクリメントします。パッチリリースは、バグ修正(セキュリティ上の問題の可能性のある修正も含む)、ドキュメントの修正、パフォーマンスの改善で構成されています。

関連性がない場合、パッチのバージョン番号は省かれることがよくあります。つまり、ドキュメントが Qt 6.6 に言及している場合、そのドキュメントは Qt 6.6.0、Qt 6.6.1、Qt 6.6.2 などに適用されます。

互換性の約束

通常、特定の Qt バージョンに対してアプリケーションの開発を開始します。時間が経つにつれて、新しい Qt バージョンがリリースされ、バグが修正されたり、新しいバージョンで導入された機能の恩恵を受けたい場合や、古い Qt バージョンがサポートされなくなった場合など、Qt バージョンを更新する必要があります。このような場合に役立つように、Qt では以下の互換性保証を行っています。

ソースの互換性

ソース互換性があるということは、2つの異なる Qt バージョンに対して、変更なしでアプリケーションをコンパイルできるということです。各リリースにおいて、Qt は同じメジャーバージョンの以前のリリースとのソース互換性を保つことを目指しています。つまり、Qt 6.0.0 に対して開発されたアプリケーションは、他の Qt 6 リリースでビルドしてもコンパイルできるはずです(ただし、API が非推奨であるため、警告が表示されるかもしれません)。

プレリリースと同様に、技術プレビュー開発中、または変更される可能性があるとしてマークされたモジュールやAPIは、この約束から除外されることに注意してください。

新しい機能の追加や問題の修正が、マイナーリリースにおけるソースの互換性を壊すような変更を必要とする場合があります。QUIP-6では、これらのいくつかを挙げています。

バイナリ互換性

バイナリ互換とは、動的にコンパイルされたアプリケーションを、2つの異なる Qt バージョンに対して実行できることを意味します。Qtは、同じメジャーバージョンの以前のQtリリースとのバイナリ互換性を維持することを目指しています。つまり、Qt 6.0.0に対してコンパイルされたアプリケーションは、他のどのQt 6リリースでも動作するはずですが、必ずしもその逆ではありません。

アプリケーション・バイナリ・インターフェース(ABI)には普遍的なC++標準がないため、この約束は両方のバージョンで同じツールチェーン(コンパイラ)とシステム環境を使用する場合にのみ適用されます。また、Qt のダイナミックビルドに対してのみ有効であり、プレリリースやテクニカルプレビューとしてマークされたモジュールやAPIは除外されます。

リリーススケジュール

Qt のメジャーリリースは稀で、2005 年に Qt 4.0.0、2012 年に Qt 5.0.0、2020 年に Qt 6.0.0 がリリースされました。

Qt のマイナーリリースは年に 2 回行われます。

各マイナーリリースでは、次のマイナーリリースがリリースされるまで、通常2~3回のパッチリリースを行います。ただし、セキュリティ上の問題でパッチレベルのリリースが必要な場合や、長期サポートリリースは例外です。

長期サポートリリース

Qt Companyでは、一部の Qt マイナーバージョンに対して、パッチレベルの追加リリースを長期間提供しています。このような追加リリースは Long-Term Support (LTS) リリースと呼ばれ、Qt のマイナーバージョンは LTS バージョンと呼ばれます。このような LTS バージョンの初期パッチリリースはオープンソースユーザーも利用できますが、LTS リリースにすぐにアクセスできるのは、商用ライセンスの下、Qt Company の商用顧客に限定されています。

通常、Qt のマイナーバージョンが 3 つ増えるごとに LTS リリースが追加されます。このようなリリースで提供されるバグフィックスやセキュリティアップデートは、より長いサポート期間と同様に、LTSバージョンをより大規模なアプリケーションの開発に適した選択肢にしています。

LTS リリースでは、Qt WebEngineモジュールの扱いが異なることに注意してください:Qt WebEngine モジュールの一部は LGPL でのみ利用可能ですが、QtWebEngine のコードはデフォルトのライセンスで利用可能です。

商用サポート

Qt Company は Qt の商用サポートを提供しています。標準のサポート条件では、Qt の各マイナーバージョンはマイナーリリースの日から 1 年間サポートされます。Qt LTS バージョンについては、最初のマイナーリリース(Qt x.y.0 リリース)から 3 年間サポートされます。さらに長いサポート期間については、個別にご相談ください。

サポートされるバージョン

バージョン最新リリース標準サポート
Qt 6.8 LTSQt 6.8.12029-10-08
Qt 6.7Qt 6.7.32025-03-26
Qt 6.5 LTSQt 6.5.72026-03-30
Qt 5.15 LTSQt 5.15.16 (オープンソース)

Qt 5.15.18 (商用)

2023-05-26 (Qt レガシーライセンス)

2025-05-26 (Qt サブスクリプション ライセンス所有者のみ)

延長サポート

標準サポートが終了した場合、これらのバージョンには拡張サポート (ES) が提供されます:

バージョン最新リリース標準サポート
Qt 6.8 LTSQt 6.8.12029-10-08
Qt 6.7Qt 6.7.32025-03-26
Qt 6.6Qt 6.6.3終了 (ES が利用可能)
Qt 6.5 LTSQt 6.5.72026-03-30
Qt 6.4Qt 6.4.3終了 (ES が利用可能)
Qt 6.3Qt 6.3.2終了 (ES が利用可能)
Qt 6.2 LTSQt 6.2.13終了 (ES が利用可能)
Qt 6.1Qt 6.1.3終了 (ES が利用可能)
Qt 6.0Qt 6.0.4終了 (ES が利用可能)
Qt 5.15 LTSQt 5.15.182023-05-26 (Qt Legacy ライセンス)

2025-05-26 (Qt サブスクリプション ライセンス所有者のみ)

Qt 5.14Qt 5.14.2終了 (ES が利用可能)
Qt 5.13Qt 5.13.2終了 (ES が利用可能)
Qt 5.12 LTSQt 5.12.11終了 (ES が利用可能)
Qt 5.11Qt 5.11.3終了 (ES が利用可能)
Qt 5.10Qt 5.10.1終了 (ES が利用可能)
Qt 5.9Qt 5.9.9終了 (ES が利用可能)
Qt 5.8Qt 5.8.0終了 (ES が利用可能)
Qt 5.7Qt 5.7.1終了 (ES が利用可能)
Qt 5.6Qt 5.6.3終了 (ES が利用可能)
Qt 5.5Qt 5.5.1終了 (ES が利用可能)
Qt 5.4Qt 5.4.2終了 (ES が利用可能)
Qt 5.3Qt 5.3.2終了 (ES が利用可能)
Qt 5.2Qt 5.2.1終了 (ES が利用可能)
Qt 5.1Qt 5.1.1終了 (ES が利用可能)
Qt 5.0Qt 5.0.1終了(ESあり)

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。