Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
Qt LGPL license query for Embedded System
Dear Qt team,
I am developing an Qt GUI using Open Source (Usage under (L)GPL v3 License) solution/toolchain from Qt. I am developing this application for an embedded product which will be used in manufacturing industry as measurement equipment.
Our company is planning to release this application under (L)GPL v3 License.
I would be grateful to you if you please answer my following questions
Can we sell our Application to customer if we release our product under (L)GPL v3 License ?
Whether it is necessary to provide source code of our Application to our customer in this case ?
In our application we will be using Qt virtual keyboard which is only available under GPL license, so whether
we can still release our application under (L)GPL v3 License even if we use Qt virtual keyboard which is only
available under GPL license ?
In case we cannot release our application under (L)GPL v3 License because of use of Qt virtual keyboard which is only
available under GPL license, then do we need to provide source code of our Application to customer if we release our
code under GPL license ?
Please inform me if you need any information from me. Thank you very much for your help :)
WARNING: I am not a lawyer
- Yes, no restriction of selling your application
- If LGPL, no, you don't. But you have to provide the changes you made to Qt if any. Your customers should be able to get the means to change the Qt version used. Which means that if you link dynamically to Qt, there's nothing special you have to do.
- No, GPL only as the license explicitly says so.
- On demand yes.
All of these answers are only my understanding on how the GPL and LGPL licenses work. For a definitive answer, ask a lawyer.
Thank you very much @SGaist for your help ...i will take care of things mentioned by you.
I have read that Qt Creator IDE and tools are also released under GPL License. So whether it means that when we develop GUI using QT Creator then also we need to provide source code of our Application to customer ? Thanks :)
The license of your application is unrelated to the license of the editor you are currently using to edit the files of your project.
It becomes important if you are integrating elements of Qt Creator in your application though.
ok @SGaist thank you very much for your reply. I will take care of it.
If that solves your question then please mark the thread as solved using the "Topic Tools" button so that other forum members may know a solution has been found :)
I have one more question. What does following requirement of LGPL license means ?
"Must make “open” consumer devices"
Q) Whether it means that we need to provide application installation guide to customer using which he should be able to install his modified version of Application or application from some other third party to our hardware?
Q) Whether it also disallow us to sign our application with an authoritative key which will only be allowed to run on device ?
Many thanks for help :)
I have read about condition of "open consumer product" under LGPL license from following link. please read last paragraph in following.
@saurabh162 LGPL v3 has so called tivoisation clause. It means that if you use a software component licensed under LGPL v3 you have to provide the users the possibility to replace this components with their own. In practice this means that you have to provide objects files generated during build process, so users can link your app again. You don't have to provide your source code though.
I think signing your binary will violate LGPL v3 as it will not allow users to replace LGPL v3 components.
Keep in mind: I'm not a lawyer!
Hence why device builder may have two filesystem on their device:
- One readonly with everything that can't be changed outside a firmware update
- One readwrite (or that can be made so) with all components that might be replaced -> hence the use of dynamic linking so the application itself is not concerned with that.
Again, if the application is statically built against (L)GPL components, object files must be provided to allow relinking. This means that object files for all released versions must be kept and made available.
I can't comment about the signing process as I don't know what exactly it involves with regards to dependencies.
hello @jsulm ..Thank you very much jsulm. Does this also applies to embedded device which will be used to measure for example presure in industries ? As according to me it is not consumer product .
@saurabh162 If you're going to sell this device (or distribute it to the outside world in any other way) it will apply. It is not just about consumers, it is about distribution: if you distribute your product (means it leaves your company) then the license applies. Distribution can be anything: selling, give away, releasing as open source, ...
Your consumers are the companies buying your product.
Ok thank you very much @jsulm for your help :)