Qt Open source Licensing
3.1. Why is Qt licensed also under an open source license?
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.
3.10. How does commercial Qt licensing work? Do all my developers need to have a valid Qt license?
There is a whole FAQ section for this topic: https://www.qt.io/faq/tag/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.
3.11. Can I mix code written with Open Source Qt and commercially licensed Qt?
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/tag/qt-commercial-licensing
3.12. Is it possible to distribute applications developed with open source version of Qt via public application stores?
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.
3.13. 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?
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.
3.14. Is it possible to use both LGPLv2 and LGPLv3 licensed libraries in the same application?
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.
3.15. The GNU Compatibility Matrix suggests that I cannot combine LGPLv2 and LGPLv3?
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.
3.2. Why do you have an agreement with KDE about your licensing? What KDE is and what’s the history of Qt and KDE?
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.
3.4. What is the consequence of not complying with the LGPL/GPL restrictions?
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
3.4.1. Who cares about the LGPL/GPL license version you are using?
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.
3.5. Can I use the Community open source version to develop my commercial product?
It depends on how you license and distribute your product. The open source version of Qt is mainly distributed under the LGPL, version 3 and GPLv2/v3. You will need to fulfill the license obligations for these licenses when using Qt in your product.
3.6. What is the difference between LGPLv2 and LGPLv3?
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.
3.7. What are my obligations when using Qt under the LGPL?
Firstly, you have to note that all Qt open source modules are not available under LGPLv3 license. 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 licensed software has to be notified of their rights by providing a copy of the LGPL license to the end user and displaying a prominent notice about your usage of LGPL licensed software.
The above freedoms cannot in any way be restricted by other licensing terms. If an application is not fully following all the obligations as outlined above, it is not allowed to be distributed at all.
You will also need to make sure that you are not using any GPL licensed modules.
3.8. Do I need to worry about LGPL when using a commercially licensed version of Qt?
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, however, use code from 3rd party open source projects such as the Qt WebEngine is using the Chromiun project licensed under LGPLv2.1. So when using these modules, you will need to fulfill the corresponding license obligations, in case of Chromium the LGPLv2.1.
All 3rd party modules and dependencies to used by different Qt modules are documented under Qt Documentation for each Qt release.
As a commercial license user, in practice, you only need to consider license obligations of LGPLv2.1, and only if you make use of Qt WebEngine.
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?
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?
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#). In case there is any doubt on whether the requirements of the open source licenses can be met in full, the commercial licensing option of Qt is often the best choice to avoid legal setbacks.