Using qt for a commercial application on windows (LGPL)
-
@SimonSchroeder said in Using qt for a commercial application on windows (LGPL):
You distribute the source code alongside/in the same way as your own app. If you distribute your app through a CD-ROM (probably not, but trying to make a point here), the same CD-ROM should also contain the source code of Qt. If people can download your app through the internet, you need to provide a download for the source of Qt as well; it is not sufficient to link to some one elses (or the official) repository. It needs to be under your control
Official link says :
Complete corresponding source code of the library used with the application or the device built using LGPL, including all modifications to the library, should be delivered with the application (or alternatively provide a written offer with instructions on how to get the source code)
https://www.qt.io/licensing/open-source-lgpl-obligationsThe most interesting part is "or alternatively provide a written offer with instructions on how to get the source code".
It didn't say that I should provide a link to download the Qt sources. It said that I should provide written instructions on how to get the Qt sources. This instruction could be sending a person to Mars to get the Qt sources, right? :) Or just send a written request by email to get the archive with the source code by email or stuff like this. Or am I wrong?@KH-219Design Thank you!
wrote on 31 Mar 2025, 06:12 last edited by SimonSchroeder@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.
-
@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.
wrote on 31 Mar 2025, 10:10 last edited by@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?
-
@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.
-
@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.
wrote on 31 Mar 2025, 11:50 last edited by@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.
-
@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 It doesn't matter how you store the source code. What is required is that you can provide Qt source code to whoever asks for it. It does not have to be an URL, it can also be an USB stick or what ever.
-
@Jo-Jo It doesn't matter how you store the source code. What is required is that you can provide Qt source code to whoever asks for it. It does not have to be an URL, it can also be an USB stick or what ever.
-
@jsulm Do you mean to provide the Qt source code on demand? But am I not obliged to provide access to the Qt source code even without user requests?
@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
-
@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
wrote on 31 Mar 2025, 13:04 last edited by@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?
-
@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
-
@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
-
wrote on 31 Mar 2025, 16:24 last edited by
Sorry, do I need to additionally provide the text of the LGPL license in software or on the some web page?
-
Lifetime Qt Championwrote on 31 Mar 2025, 18:43 last edited by SGaist 4 Jan 2025, 11:02
Yes, with the software. Also
QMainWindowQApplication has an aboutQt method that shows this information. -
Yes, with the software. Also
QMainWindowQApplication has an aboutQt method that shows this information.wrote on 1 Apr 2025, 10:26 last edited by Jo Jo 4 Jan 2025, 10:31@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
-
@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
-
@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
wrote on 1 Apr 2025, 11:13 last edited by zvoopz 4 Jan 2025, 11:13@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
-
@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
wrote on 2 Apr 2025, 11:26 last edited by@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)
-
@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)
wrote on 2 Apr 2025, 11:39 last edited by Pl45m4 4 Feb 2025, 11:42@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. -
@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. -
wrote on 3 Apr 2025, 06:03 last edited by
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.
-
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.
@SimonSchroeder said in Using qt for a commercial application on windows (LGPL):
It doesn't matter if it's commercial or not
I disagree with this statement. As far as I know as commercial user you do not have to follow GPL/LPLG as you get Qt under commercial license, not GPL/LGPL (dual licensing).
24/76