Qt オープンソース版の利用
Qtオープンソース版のダウンロードに進む前に、
プロジェクトに適切なライセンスかご確認ください。
考慮すべきこと
Qtフレームワークは、オープンソースと商用ライセンスの両方で利用可能です。このデュアルライセンスモデルは、大まかに「何かのための何か」を意味するクイド・プロ・クオの原則に基づいています。
簡単に言うと、Qt を使用してアプリケーションを作成することで得られる価値の見返りとして、Qt に貢献したり、Qt を購入することでお返しをするということです。
オープンソースによる貢献
プロジェクトにオープンソースライセンスを選択すると、LGPLバージョン3、GPLバージョン2、GPLバージョン3のいずれかに基づいてQtを使用して、無料のオープンソースソフトウェアの開発に貢献していただきます。
Qt オープンソースモデルの基本的な前提
GPL - すべてのユーザーは、アプリケーションのソースコード全体を取得、変更、再配布する権利を有します。ユーザーには、GNU General Public Licenseの4つの自由に基づく権利が付与されます。
LGPL -GNU Lesser General Public Licenseの対象となるQtコンポーネントへのすべての変更を、コミュニティに提供する必要があります。これはQtモジュールの大部分をカバーする主要なオープンソースQtライセンスです。
Qt製品マップで、異なるオープンソースモデルに基づいて利用可能なコンポーネントを確認してください。
Qtの一部は、GPLに基づいてのみオープンソースで提供され、GPLに対応するライセンスを発行することが必要になります。Qtにはサードパーティのオープンソースコンポーネントも同梱されており、使用する場合はそれぞれのライセンスに準拠する必要があります。詳細はQt に含まれるその他のライセンスを参照してください。
オープンソースの使用義務
Qt モジュールの大部分は、 LGPL v3 および GPL v3 オープンソースライセンスの下で利用可能です。このライセンスで開発する場合、以下の義務があります:
- Qt ライブラリの再リンクメガニズムを提供すること。
- ライセンスのコピーを提供し、Qt の使用を明示的に記載すること。
- Qt ソースコードのコピーを顧客が利用できるようにすること。
- Qt のソースコードの変更が非独占的であることを承認すること。
- 「オープン」なコンシューマデバイスを作成すること。
- デジタル著作権管理の条件に同意すること。(GPL FAQをご覧ください)
- ソフトウェア特許を行使しようとする場合には、特別な配慮をすること。(FAQをご覧ください)
オープンソースライセンスモデルがプロジェクトに適していない場合、またはライセンス条項を遵守できるかどうか懸念がある場合は、お問い合わせください。商業ライセンスパッケージの選択に基づき、アプリケーションの開発、使用、配布に必要な権利を確保するお手伝いをいたします。
同じアプリケーションやデバイスで、オープンソースと商用ライセンスの両方を使用することはできません。詳しくはQt ライセンス FAQをご覧ください。
コミュニティに貢献しましょう!
私たちの資金は商用ライセンスとサービスの販売に由来するものであるため、可能な限り迅速に商用化の準備を整えることが不可欠です。これは、Qt の開発プロセスにコミュニティが積極的に参加することによってのみ達成できます。Qt コミュニティは、Qt の安定性、豊かさ、品質を保証する上で重要な役割を担っています。Qt のリリースが世界中の何千人ものオープンソース開発者によって徹底的にテストされることで、Qt のさらなる開発を推進するためのコストを支えるために必要な後押しを得ることができます。これは Qt の未来を保証するものです。私たちはこれを好循環と呼んでいます。
Contribution Wiki へQtバイナリをお探しですか?
Qt Online Installerからダウンロードしてください。適切なバージョンに誘導し、オープンソースライセンスで利用可能なツールとアドオンコンポーネントをインストールするのをサポートします。
Qt Online Installer をダウンロードするQtをはじめる
注意義務
Qt オープンソースライセンスの義務を遵守できていることを確認してください。利用するライセンスを決定するときは、貴社のオープンソースポリシーを確認するか、ソフトウェアライセンスにかかわる法律の専門家にご相談ください。
よくある質問
Why is Qt licensed also under an open source license?
- Qt Open Source Licensing
- Popular
We believe in the Free Software movement where using software comes with certain rights, but also certain obligations. Use of open source licensing gives users four primary degrees of freedom when using Qt applications or devices:
- The freedom to run the program for any purpose
- The freedom to study how the program works and adapt it to specific needs
- The freedom to redistribute copies so you can help your neighbor
- The freedom to improve the program and release your improvements to the public, so that the whole community benefits
The freedoms are non-negotiable and absolute, the freedoms cannot be enjoyed selectively or partially, you also need to pass them to your users.
The Free Software community has thrived because of these rules, but there are also developers who never intend to observe or cannot comply to these rules, and thus should get a commercial license. The Qt Company exists to support both sets with the dual offering.
Why do you have an agreement with KDE about your licensing? What KDE is and what’s the history of Qt and KDE?
- Qt Open Source Licensing
KDE (kde.org) is an international free software community, founded in 1996, producing an integrated set of cross-platform applications for desktop. KDE is mainly known for its Plasma Desktop environment, which is provided as the default work environment on many Linux distributions. KDE software is based on the Qt framework. In the early days of Qt, the KDE project and community were the biggest driving force in building the developer ecosystem around Qt.
In the very early days, Qt was already dual-licensed, but the source code was available under proprietary open source licenses. Compromises with KDE were sought to ensure that Qt would be available for their use under appropriate open source licensing even if Trolltech (the company that founded Qt) would be acquired or go bankrupt. As a result, the KDE Free Qt Foundation was founded and the KDE Free Qt Foundation Agreement created.
The KDE Free Qt Foundation is an organization with the purpose of securing the availability of the Qt toolkit for the development of Free Software and in particular for the development of KDE software. The Foundation was originally founded by Trolltech and the KDE e.V. (the legal non-profit organization behind KDE) in 1998 and it has a license agreement that ensures the availability of Qt under LGPLv3 and GPLv3 licenses for major desktop and mobile platforms. The license agreement has been updated couple of times over the years, mainly because of acquisitions around Qt or updates to licenses and platforms.
What is the consequence of not complying with the LGPL/GPL restrictions?
- Qt Open Source Licensing
If software using these open source licensed libraries does not fully comply with the license obligations, you will lose your license and related distribution rights. It is also good to note that in most countries copyright infringement is statutory violation, not breach of contract and thus the statutory remedies apply.
You can find more information about GPL from GPL FAQ https://www.gnu.org/licenses/gpl-faq.html
What is the difference between LGPLv2 and LGPLv3?
- Qt Open Source Licensing
LGPLv3 is the current version of the GNU Lesser General Public License. LGPLv2.1 is an older version and not recommended by the Free Software Foundation for new projects anymore. Both licenses have the same intention, namely to protect the freedom of users to use and modify the software licensed under LGPL.
LGPLv3 makes this intention very explicit. You have to provide means to the end user to install a modified version of the library licensed under LGPLv3 and run your software using that modified library. In practice, this for example refers to:
- Tivoization – Explicitly not allowing creation of closed devices where the end user does not have the LGPL granted rights for the Qt open source libraries
- DRM and hardware encryption – This cannot be used to circumvent these obligations
- Software patent retaliation – Where all users of the software are granted licenses thus making software patent retaliation of any potentially patented software in the distributed software meaningless.
Can I use the Community open source version to develop my commercial product?
- Qt Open Source Licensing
It depends on your own business requirements and your product. You will need to fulfill all open source license obligations with your product.
Qt Community Edition, the open source version of Qt is mainly licensed under the LGPL, versions 2.1 or 3 and GPL version 3.
What are my obligations when using Qt under the LGPL?
- Qt Open Source Licensing
Firstly, you have to note that all Qt open source modules are not available under LGPLv3 . Some modules are available under GPLv3 for open source usage, and e.g. 3rd party components such as Chromium web engine are provided under LGPLv2.1.
When Qt modules and libraries under the LGPLv3, there are a couple of obligations you will need to fulfill:
- When using Open source software you need to be aware of and track the licensing of each sample, source code sniplet, module and library you use in your project.
- You will need to deliver the complete source code of Qt libraries you used, including all modifications you did or applied, to your users/customers. Alternatively, you need to provide a written offer with instructions on how to get the source code. Please also note that this has to be under your control, so a link to the source code provided by the Qt Project or Qt Company is not sufficient.
- The LGPL allows you to keep your own source code of your application private as long as it is “work that uses” the library. Dynamic linking is usually recommended here.
- The user of your application has to be able to re-link your application against a different or modified version of the Qt library. With LGPLv3 it is also explicitly stated that the user needs to be able to run the re-linked binary on its intended target device. It is your obligation to provide the user with all necessary tools to enable this process. For embedded devices, this includes making the full toolchain used to compile the library available to users. For parts licensed under LGPLv3 you are obliged to provide full instructions on how to install the modified library on the target device (this is not clearly stated with LGPLv2.1, although running the application against the modified version of the library clearly is the stated intention of the license).
- The user of an application or device using LGPL software has to be notified of their rights by providing a copy of the full LGPL terms and conditions text to the end user and displaying a prominent notice about your usage of LGPL software.
The LGPL terms and conditions cannot in any way be restricted by other licensing terms. If an application is not fully complying to the obligations defined in the LGPL, it is not allowed to be distributed at all and you will lose all your rights to the LGPL software.
The GPL has a tighter set of rules than the LGPL (Lesser GPL).
Do I need to worry about LGPL when using a commercially licensed version of Qt?
- Qt Open Source Licensing
Usually, not. When using the commercially licensed version of Qt, we provide almost all of Qt under a commercial license terms.
A few modules in Qt use code from 3rd party open source components such as the Qt WebEngine is using the Chromiun licensed under LGPLv2.1, or Qt Multimedia using the FFmpeg also licensed under LGPLv2.1. When using these modules, you either need to replace the 3rd party modules with your own code or fulfill the corresponding license obligations for that part of your solution, in case of Chromium or FFmpeg the LGPLv2.1.
All 3rd party modules and dependencies in different Qt modules are documented under Qt Documentation . The list may vary between each Qt release.
How does commercial Qt licensing work? Do all my developers need to have a valid Qt license?
- Qt Open Source Licensing
There is a whole FAQ section for this topic: https://www.qt.io/faq/qt-commercial-licensing.
Each Qt user must have their own assigned Qt commercial license. UI Designers, Technical Artists, Software Developers, or Test Automation Engineers might have different kind of Qt licenses, but every single person needs a valid subscription license.
Can I mix code written with Open Source Qt and commercially licensed Qt?
- Qt Open Source Licensing
No. If you want to migrate from open source Qt to a commercial license, then please contact Qt sales.
There are also more topics on this question under https://www.qt.io/faq/qt-commercial-licensing.
3.9. I’m not sure if I’m in compliance with the licensing scheme. I am confused with the open source licensing. What should I do?
- Qt Open Source Licensing
We’re always happy to talk to you about your situation, but we aren’t in the position to provide any legal advice. It is always recommended to contact a lawyer, familiar with open source licenses, for a full review of your project to determine whether you can fulfill all of the obligations of applicable open source licenses (LGPLv#/GPLv#).
Is it possible to distribute applications developed with open source version of Qt via public application stores?
- Qt Open Source Licensing
Each application store has their own unique terms and conditions, which may or may not be compatible with distributing applications under LGPL or GPL licenses.
The commercial license of Qt is compatible with the terms and conditions of all the leading application stores and thus typically the best choice for distributing a closed source application in various application stores.
I have started development of a product using the open source version of Qt, can I now purchase a commercial version of Qt and move my code under that license?
- Qt Open Source Licensing
Yes. Projects distributed under the commercial version of Qt must also be developed under the commercial version of Qt.
If you have already started the development with an open source version of Qt we will work together to find a solution to move your code base over from open source governance to commercial licensing.
If you are unsure of which license or version to use when you start development, we recommend you contact The Qt Company to advise you on the best choice based on your development needs.
Is it possible to use both LGPLv2 and LGPLv3 licensed libraries in the same application?
- Qt Open Source Licensing
Yes, it is possible to use both LGPLv2.1 and LGPLv3 licensed libraries in the same application for example by having these as separate shared libraries. Doing this does not require changing license in either of the libraries, and it is possible to select a proprietary license for the application, if desired.
The GNU Compatibility Matrix suggests that I cannot combine LGPLv2 and LGPLv3?
- Qt Open Source Licensing
If LGPLv2.1 code and LGPLv3 code are in different shared libraries, then they can be used in the same application, and you can license your application with a proprietary license / LGPLv2.1 / LGPLv3 as you wish.
Ref: https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility.
Who cares about the LGPL/GPL license version you are using?
- Qt Open Source Licensing
You, your customers and end users, unless you are using Qt under a commercial license. LGPL & GPL are copyleft licenses, which means that the license follows with your product to your customer and users or your solution.