1

I have confusion about how the GNU open source licenses and QT commercial licenses.

In the QT's pricing page it says:

Can I distribute Qt binaries in conjunction with my desktop or mobile application?

Yes. Distribution of Qt libraries in binary form in conjunction with the developed application is allowed.

And on the GNU's website it says:

Does the GPL require that source code of modified versions be posted to the public?

The GPL does not require you to release your modified version, or any part of it. You are > free to make modifications and use them privately, without ever releasing them. This > applies to organizations (including companies), too; an organization can make a modified > version and use it internally without ever releasing it outside the organization.

But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program's users, under the GPL.

Thus, the GPL gives permission to release the modified program in certain ways, and not in
other ways; but the decision of whether to release it is up to you.

Does this mean that a commercial application I make that uses PyQt5 as its GUI MUST be open source with a GPL license? And If I want to keep its source code closed, I have to buy a commercial license?

What about other libraries under GPL license? If say, I used a simple library that tells me if 13 is even or odd in my project that I want to sell to people, do I have to make the source code open even if I don't modify anything in the library like adding the number 14 as well?

nostack
  • 11
  • 1
  • Maybe part of your confusion is that Qt libraries are LGPL licensed. That's why the Qt FAQ page says that. LGPL lets you keep your main application closed source if you want, as long as you follow certain rules (like making it possible for an end user to upgrade/modify the LGPL library that you're using and still use it with your application). – Brandin Sep 21 '22 at 04:07
  • However, PyQt is a separate program that sits on top of the Qt libraries. And PyQt is indeed GPL licensed. So if you depend on PyQt with your application, you need to follow the GPL rules. Or else buy a separate license from Riverbank. – Brandin Sep 21 '22 at 04:08
  • For your bottom paragraph "other GPL libraries" question please see other questions on this site, because I think it's been answered a lot before. For example, https://opensource.stackexchange.com/questions/10775/gpl-libraries-on-my-software – Brandin Sep 21 '22 at 04:10
  • That's their business model: you pay them for a license which allows you to write proprietary software. Or You use it under GPL and need to abide by its open source terms – planetmaker Sep 21 '22 at 06:13
  • 2
  • 1
    See also this question about PyQt specifically, maybe this answers your question: Question about PyQt license – Brandin Sep 21 '22 at 08:41
  • Note that PyQt has LGPL alternatives (e.g. PySide) but using the alternatives may require some minor adaptations in your code, especially if you're using QString a lot. As I recall, most of the other Qt APIs are a pretty straightforward/trivial translation from the C++ header file declaration into all Python wrappers, no matter which wrapper you're using (PyQt et al). – Brandin Sep 21 '22 at 08:42

0 Answers0