December 16, 2011

floatingWoods floatingWoods
Lab Rat
89 posts

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.dll

I 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

10 replies

December 16, 2011

Volker Volker
Ant Farmer
5331 posts

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.

December 16, 2011

Andre Andre
Robot Herder
6422 posts

I concur, IANAL, but it seems to me that you are fine.

December 16, 2011

Seba Seba
Ant Farmer
107 posts

If you app stays open source you can distribute it. Otherwise, you have to buy the commercial licence of Qt (see link [digia.com]).

December 16, 2011

floatingWoods floatingWoods
Lab Rat
89 posts

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

December 16, 2011

Volker Volker
Ant Farmer
5331 posts

floatingWoods wrote:
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

This is short, but summarizes common opinion about using LGPL software.

December 17, 2011

peppe peppe
Ant Farmer
1005 posts

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.

 Signature 

Software Engineer
KDAB (UK) Ltd., a KDAB Group company

December 17, 2011

Seba Seba
Ant Farmer
107 posts

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:

  1. Need to incorporate proprietary software for mission-critical applications that prohibits use of open source software
  2. Need for product warranties & indemnities
  3. Need to secure that your software cannot be accessed or manipulated by end users

Cheers!
Seba84

December 17, 2011

Andre Andre
Robot Herder
6422 posts

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.

December 17, 2011

koahnig koahnig
Dinosaur Breeder
2929 posts

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

January 4, 2012

zester zester
Lab Rat
81 posts

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 ######. 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.

 
  ‹‹ Building 4.8 from source on Mac OS X 10.6 + Xcode 4.2      moc files is not generates in VS 2010 ››

You must log in to post a reply. Not a member yet? Register here!