[Development] Qt use under LGPL and exceptions to it

Thiago Macieira thiago.macieira at intel.com
Sun Jun 22 15:43:33 CEST 2014

Em dom 22 jun 2014, às 11:08:40, Tomasz Siekierda escreveu:
> However, this paragraph is *not present* in the license file on
> gitorious, and the LGPL exception placed in a separate file
> (LGPL_EXCEPTION.txt) has a completely different wording:
> "Digia Qt LGPL Exception version 1.1
> As an additional permission to the GNU Lesser General Public License version
> 2.1, the object code form of a "work that uses the Library" may incorporate
> material from a header file that is part of the Library. You may distribute
> such object code under terms of your choice, provided that:
> (i) the header files of the Library have not been modified; and
> (ii) the incorporated material is limited to numerical parameters, data
> structure layouts, accessors, macros, inline functions and
> templates; and
> (iii) you comply with the terms of Section 6 of the GNU Lesser General
> Public License version 2.1.
> Moreover, you may apply this exception to a modified version of the Library,
> provided that such modification does not involve copying material from the
> Library into the modified Library's header files unless such material is
> limited to (i) numerical parameters; (ii) data structure layouts;
> (iii) accessors; and (iv) small macros, templates and inline functions of
> five lines or less in length.
> Furthermore, you are not required to apply this additional permission to a
> modified version of the Library."
> (link:
> https://qt.gitorious.org/qt/qtbase/source/4cb03924c113c74b99e18c7347278600a
> 011e917:LGPL_EXCEPTION.txt)
> Those 2 exceptions seem to contradict themselves, in my opinion (the
> first one restricts our rights, while the other one expands them). Can
> anybody throw some light on what is going on here? Which LGPL
> exception should be followed by the users? Both? Or only the one
> distributed with the source code?

An exception cannot restrict the rights. Both expand: both are granting you 
the right to distribute binaries that incorporate a certain amount of code 
from Qt into the binary. That is necessary due to the nature of inline and 
template functions -- most C++-based projects carry an LGPL exception like 

In any case, the one in the source code is the valid one.
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

More information about the Development mailing list