Qt World Summit: Register Today!

A Couple License and Copyright Questions

  • Hello All,
    I've recently completed my first program (at least the first useful one), which uses some Qt, and I've never had to handle copyright and licensing issues. I will be dynamically linking to Qt dlls and license under the LGPL. I will be distributing on Windows, Mac, and Linux.

    From what I have been able to gather, I will need to:

    1. Put a copyright notice within the program and also in a text file along with the executable
    2. Put a copyright notice in a text file along with the executable
    3. Note that the program uses Qt 4.x within the program
    4. Note that the program uses Qt 4.x in a text file along with the executable
    5. Have a link to where the Qt SDK source can be downloaded
    6. Have the LGPL text distributed with the software.

    Will it be sufficient to include the text below in a readme file with the distributed executable, as well as put it in an 'About' menu within the software?

    Copyright 2011 John Doe
    This software dynamically links to Qt 4.x and is licensed under the LGPL license.
    The source code for Qt SDK can be found at [qt SDK website].
    The full text for the LGPL license was distributed as a text file with this software. [a txt file with the LGPL text included in the same folder as the software executable and DLLs.

    Thanks in advance.

  • Are you saying that you're using Qt under LGPL license, or that you will license your program under LGPL?

    I'm not a lawyer and have been struggling with the same question. I have cobbled together the following text from many sources:

    This XXXXX software is © John Doe 2011. It is licensed under the LGPL license.

    This XXXXXX software dynamically links to unmodified Nokia Qt4 Library. The Qt4 Library is © 2011 Nokia Corporation and/or its subsidiary(-ies), and is licensed under the GNU Lesser General Public License version 2.1 with Nokia Qt LGPL exception version 1.1.

    Qt4 library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License, version 2.1, as published by the Free Software Foundation.


    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.

    You should have received a copy of the GNU Lesser General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

    The source code for Qt 4.7.X SDK is available from Nokia here: http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.X.zip.
    It is also available on request from John Doe [add contact details].

    I think you can use something like the text above for Mac and Windows, if you're releasing your software under LGPL as well.

    However, if you're not releasing your software under LGPL, then it's not enough to just replace "LGPL" with something else as LGPL always takes precedence when two licenses are in conflict (e.g. you cannot forbid reverse engineering). Since it takes a lawyer specialized in open source issues to figure out whether your license is compatible with LGPL or not, you could try adding something like this after your licence: "subject to GNU Lesser General Public License version 2.1 with Nokia Qt LGPL exception version 1.1". If you explicitly acknowledge that LGPL + Exception will take precedence whenever in conflict with your own licence I think there is a reasonable chance this could be acceptable to Nokia. People who genuinely try to comply are usually warned first if not in compliance.

    On Debian GNU Linux based systems you should include machine-readable "copyright" file with your installer. Format for this file is given here: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?rev=174

    I don't know about Fedora.

  • As you have defined the licensing method for your application the question is that hte user read the license globally during the installation process but maybe a good practice too include a "info" button or menu or similar in the appication that shows the license text at all. This is independent by the licensing method.

    As I have read in the license specifications of Qt SDK what I think is that you can't license a proprietary product with the Qt libraryes statically linked in it without a proper commecial license of Qt.
    Then what you can do is license Qt LGPL 3.0 and your product (commercial or not) with separate licenses. The example of Gladarius is valid for yout software only and if you release your software as commercial non-free you should state the corresponding license you want.

    Then the Info page of the application should explicitly show the Qt licensed components under the LGPL 3.0 (if you use this) and your proudct license.

  • GPL V3 or LGPL V2.1 (not LGPL V3).

  • Hy Scylla,

    If you see in the admin settings of a project (of yourself, or you have admin access) you see that the possible licensing are the following:

    AGPL 3
    Apache License
    Eclipse Public License
    GPL 2.0
    GPL 3.0
    LGPL 2.1
    LGPL 3.0
    MIT License
    Mozilla Public License 1.1 (MPL)
    New BSD

    The new LGPL 3.0 license as I know, but I am not a lawyer, has some useful new clauses respect the LGPL 2.1 and is more recent. It is possible to manage the open + proprietary license just in case like the example above.

  • By Cristy Hamley, “the Qt legal gal”:

    Comments section is also interesting, Cristy provides answers to all questions posted at the end.

  • Thank you Galdarius, very useful.


Log in to reply