Using qt for a commercial application on windows (LGPL)
-
@Pl45m4 said in Using qt for a commercial application on windows (LGPL):
Probably, but I meant, if there is no Qt Company anymore... all its licenses are void?!
IANAL of course!
To my understanding, software licensing is based on copyright law. The law controls if and when a copyright expires and the protected work becomes a free-for-all. For example in the United States it is life + 70 years, so for a painting the painter's estate / inheritors would keep holding the copyright for additional 70 years after death of the original author.
I'm not sure how that exactly works when the copyright holder is a corporate entity, but I suppose that if the Qt Company goes bankrupt the copyright for the parts of the Qt source code that it held will be sold off to someone by the liquidator as part of the company's intellectual property. At any rate the LGPL license is non-revocable, so anyone who got it can keep using it under the same terms even if there is a new owner.
-
@Jo-Jo said in Using qt for a commercial application on windows (LGPL):
The most interesting part is "or alternatively provide a written offer with instructions on how to get the source code".
Legally, it doesn't really matter how Qt tries to explain the LGPL. Finally, the source is put under the LGPL and that is the legal document that grants you certain rights. The LGPLv3 refers for a few things to the GPLv3 (https://www.gnu.org/licenses/gpl-3.0.html). Under section 6 there are 5 options how to distribute the source. Here are the three that I tried to refer to:
a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, [...]
d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements.
Especially the last sentence means you cannot rely on Qt hosting the source code on GitHub. You neither can ensure that Qt keeps their repository there nor can you ensure that GitHub keeps existing.
-
@SimonSchroeder said in Using qt for a commercial application on windows (LGPL):
Especially the last sentence means you cannot rely on Qt hosting the source code on GitHub. You neither can ensure that Qt keeps their repository there nor can you ensure that GitHub keeps existing.
Do I understand correctly that it is enough to provide a link to download the Qt source code, for example, to the GitHub repository?
-
@Jo-Jo said in Using qt for a commercial application on windows (LGPL):
Do I understand correctly that it is enough to provide a link to download the Qt source code, for example, to the GitHub repository?
No, it means the opposite, because you cannot be sure that GitHub will be there al long as you distribute your software. That's why you should have the source code of the Qt version you're using and provide it on request.
-
@jsulm said in Using qt for a commercial application on windows (LGPL):
No, it means the opposite, because you cannot be sure that GitHub will be there al long as you distribute your software. That's why you should have the source code of the Qt version you're using and provide it on request.
Should it be a web hosting under my control? Even then, the hosting may stop working. Any Internet resource may eventually close down.
-
@Jo-Jo said in Using qt for a commercial application on windows (LGPL):
But am I not obliged to provide access to the Qt source code even without user requests?
You are as far as I know, read again what @SimonSchroeder wrote
-
@jsulm I have read it. As far as I understand, I am obliged to provide a download link plus a guarantee that if the link stops working, I will be able to transfer the Qt sources in an alternative way. To do this, I must store the Qt sources somewhere on my own. Right?
-
@Jo-Jo said in Using qt for a commercial application on windows (LGPL):
To do this, I must store the Qt sources somewhere on my own.
Yes, that's what I wrote
-
Yes, with the software. Also
QMainWindowQApplication has an aboutQt method that shows this information. -
@SGaist
I can't find the QMainWindow::aboutQt method in the documentation. Can you provide a link? I found QApplication::aboutQt but it gives us general information about Qt licensing (not specific to LGPL)One more question: can anyone provide me with a link to a commercial Windows application that uses Qt under the LGPL license? I need such a program as an example
-
@Jo-Jo My bad it was QApplication::aboutQt
-
@Jo-Jo said in Using qt for a commercial application on windows (LGPL):
can anyone provide me with a link to a commercial Windows application that uses Qt under the LGPL license? I need such a program as an example
I dont know which type of license does Viber use. I cant find any information about licenses inside this application but I see a bunch of Qt`s dlls here
C:\Users\username\AppData\Local\Viber
No Qt mention as well
-
@zvoopz said in Using qt for a commercial application on windows (LGPL):
No Qt mention as well
Probably they are using commercial license but I am interested in example of app which releases under LGPL (no payment for Qt license, but commercial app)
-
@Jo-Jo said in Using qt for a commercial application on windows (LGPL):
I am interested in example of app which releases under LGPL (no payment for Qt license, but commercial app)
I think it might be hard to tell, because to know this, you have to get the source code, which commercial app developers would not publish.
And AFAIK commercial Qt users can link Qt statically while keeping the code hidden. So as "customer" you are not able to tell whether such app even uses Qt.
Meanwhile, commercial LGPL developed apps you also have to buy first to inspect the files that are shipped with it.
(I don't have any apps I paid for, that were developed using Qt)You could check the Windows App Store. Maybe there you find apps tagged with "Qt" (if there is such feature).
Or look into the Showcase subforum here. Maybe you find links to commercial apps that were developed by open source users here in the forum. -
BTW, any app needs to comply with the same rules when using Qt under the GPL or LGPL. It doesn't matter if it's commercial or not. As soon as you distribute a binary (even if it is open source) you need to follow these rules. So, open source apps using Qt will suffice as example. Just note that just because someone else isn't doing something (e.g. not providing a download link for the Qt sources) doesn't mean this is the correct way to do it.