I didn't buy Qt. Can I distribute my application?
-
Hello,
I am aware of the LGPL licensing that Qt is available under, but want to make sure that I am not doing anything illegal.
My Qt application is built under Qt Creator. I dynamically link to the libraries (at least I think I do):In the project file, I have "CONFIG = precompile_header". Nothing like "staticlib" nor "shared" nor "static"
I want to distribute my application with the following ORIGINAL files (from the "QtSDK/Desktop/Qt/4.7.3/mingw/bin/" directory):
libgcc_s_dw2-1.dll
mingwm10.dll
QtCore4.dll
QtGui4.dll
QtNetwork4.dll
QtOpenGl4.dllI would copy above files directly into the application's directory. I tested above procedure on several PCs, and my application works fine.
Could you please confirm that distributing above mentionned files is OK in my case?Thanks for any comment/advice
-
If you want a definitive answer: ask a lawyer, not the folks in a public forum.
For many developers/companies that I know it seems to be sufficient.
-
I concur, IANAL, but it seems to me that you are fine.
-
If you app stays open source you can distribute it. Otherwise, you have to buy the commercial licence of Qt (see "link":http://www.digia.com/en/Qt/Try-Qt-Now/).
-
Thanks for all the opinions. I however don't agree with Seba84. That's the difference between GPL and LGPL licensing:
LPGL licensing allows for closed-source software distribution, as long as that software dynamically links to the unmodified library (Qt).
Above is expressed in a somewhat simplified fashion, but believe succintly summarizes the difference between GPL and LGPL.
The link that you posted Seba84 says "If you need to INCORPORATE proprietary software...", which means "incorporate into Qt", not into your own software which would anyway not make any sense.
Just my opinion
-
[quote author="floatingWoods" date="1324071716"]Thanks for all the opinions. I however don't agree with Seba84. That's the difference between GPL and LGPL licensing:
LPGL licensing allows for closed-source software distribution, as long as that software dynamically links to the unmodified library (Qt).
Above is expressed in a somewhat simplified fashion, but believe succintly summarizes the difference between GPL and LGPL.
The link that you posted Seba84 says "If you need to INCORPORATE proprietary software...", which means "incorporate into Qt", not into your own software which would anyway not make any sense.
Just my opinion[/quote]
This is short, but summarizes common opinion about using LGPL software.
-
The problem are all the "small" details. That's why you need a lawyer: to know in advance if you can use the LGPL, and how to fullfil its requirements.
-
Hello all,
Sincerelly, I have to document myself on the differences between GPL and LGPL as I am not an expert on the subject. But anyway, from the link above you can see that it is written the following:
You should develop with a Qt Commercial if you:
Need to incorporate proprietary software for mission-critical applications that prohibits use of open source software
Need for product warranties & indemnities
Need to secure that your software cannot be accessed or manipulated by end users
Cheers!
Seba84 -
LOL! Right, and using Qt Commercial will guarantee you that your users can't "access" or "manipulate" the software? Think again. Qt Commercial will allow you to use techniques like static linking or patching Qt itself (while keeping those patches for yourself). If you use dynamic libraries with the commercial Qt, tinkering with your application is just as easy as it is with an LGPL library. I have seen the licencing text for commercial Qt: there is very, very little of point 2 to be found in there. Point 1 is really full of hot air. "Mission Critical" applications? You mean all those linux clusters running server parks around the globe are not mission critical because Linux is GPL? This provision has nothing to do with your own code, but only if you use third party libs as well that in their licence terms have something that prohibits using it with some form of LGPL code. I would bet those libraries and licencing terms are rare.
LGPL requires you to make it possible for users to change the libraries used. Using dynamic linking, that is just a matter of replacing the DLL files, but if you linked statically, you would have to supply object files that can be re-linked into a new static application.
-
The third statement is quite interesting formulation anyhow. Dumb me always thought that I have to access software when I want to use it. :D
Andre, I like your summary. It hits in my opinion the nail. However, IANAL -
With the library's you listed if your dynamically linking then you will be fine. But a word of advice
if you plan on publicly distributing your app as closed source free or for profit. You lose all legal protection
of any and all open patents. And open your self up to paying patent royalty's and fees. XML is one
such technology that IBM extends legal patent protect as long as your application is open source.
Microsoft has several such patents with the same requirement. But unlike IBM Microsoft WILL pursue royalty's.