Question

Qt is a graphic framework which has a double license:

  • commercial (statically link and modify at your wish)
  • LGPL (you should either dynamically link against it or release your source code, any modification should be released under GPL)

If I create some Qt-based controls for an application that can link dynamically against Qt, can I release my controls under University of Illinois/NCSA license? I'd like those to be used in any project (including commercial projects) by just retaining the copyright that I did those.

Was it helpful?

Solution

The University of Illinois/NCSA license is a permissive, MIT-style open source license.

As the license does not impose any restrictions on redistribution or modification that are not also in the (L)GPL, the NCSA license is compatible with the (L)GPL license. This means that there are no legal restrictions on distributing an application that contains both code under the GPL license and code under the NCSA license.

Given this, you are free to release your control under the NCSA license.
The only thing that is not allowed is to distribute a binary-only version that is statically linked to the LGPL Qt distribution, because that would violate the LGPL terms.


For reference, when combining (L)GPL code with non-GPL code, the following rules apply:

  • If the non-GPL code is distributed on its own and without dependencies on GPL-only code, then the GPL restrictions don't apply.
  • If the non-GPL code depends on GPL-only code or is distributed as one application/library with GPL code, then the GPL restrictions apply to the entire application/library. In particular, the source code for the entire application/library must be available.

As Qt is dual licensed, it is possible to use (and distribute) your control in a closed-source application without distributing source code, as long as that application uses the commercial Qt version. This is something for the application authors to ensure.

Licensed under: CC-BY-SA with attribution
scroll top