PDA

View Full Version : LGPL Gotchas



mhoover
24th April 2009, 00:10
Hi,

I work for an American company in Hawaii, and we are currently leaning toward dropping our Commercial Licenses and moving to the LGPL version of Qt.

But I'd like to present my leaders with a list of potential downsides.

We have no need or desire to modify Qt in any way, and our need for support is very low if not zero. On the other hand, I'm wondering if there is any kind of potential conflict with maintaining our source code that we wrote with the Commercial License through LGPL versions of Qt. There seems to be some caveats about mixing source code licenses, but I think it might be geared toward OpenSource code getting scooped into Commercial License projects.

Are there any other gotcha's I'm not thinking of?

Lykurg
24th April 2009, 07:48
Hi,

since you are not allowed to link your application static it may be a problem if you use private, encrypted data.
Short example: You have a dictionary application with an encrypted catchword file. The words displayed in a QListWidget. If you link static, there is no easy way to get the data out. If you link dynamic, I simply modify QListWidget that the content of all new items is logged into a file. Et voilà , I have your catchwords...

Lykurg

Edit: And off course I think If a company earns money with Qt, they should also pay for the framework, because it's a really good one and saves a lot of engineering time, which saves a lot of money.
Edit 2: I know moralistic arguments have no strength by business man, but one can try...

mhoover
24th April 2009, 21:49
"since you are not allowed to link your application static it may be a problem if you use private, encrypted data. Short example: You have a dictionary application with an encrypted catchword file. The words displayed in a QListWidget. If you link static, there is no easy way to get the data out. If you link dynamic, I simply modify QListWidget that the content of all new items is logged into a file. Et voilà , I have your catchwords..."

Thanks! That is good to know. It doesn't affect us very much because we write our software for a closed site.

"I think If a company earns money with Qt, they should also pay for the framework"

If I were running TrollTech, I would say the same thing. Apparently their business model is different. Apparently you're just paying for ... well, what are you paying for exactly with the Commerical License? It isn't clear to me how Microsoft makes money on their express editions since they're basically the same versions as VS with no MFC (which is hideous to work with IMO).

"I know moralistic arguments have no strength by business man"

I would have said politicians, actors, professors, and journalists. At least some business men can cut you a good deal, like Qt for example.

wysota
24th April 2009, 22:35
Hey... leave actors and professors alone :)

fullmetalcoder
26th April 2009, 17:34
"since you are not allowed to link your application static it may be a problem if you use private, encrypted data. Short example: You have a dictionary application with an encrypted catchword file. The words displayed in a QListWidget. If you link static, there is no easy way to get the data out. If you link dynamic, I simply modify QListWidget that the content of all new items is logged into a file. Et voilà , I have your catchwords..."

Thanks! That is good to know. It doesn't affect us very much because we write our software for a closed site.
Is there any serious software engineer still relying on embedding of critical data (even encrypted) in an executable??? Besides even if someone was foolish enough to do so he probably wouldn't store it in a QListWidget (unless he intends to show it to the user in wich case there is no need to substitute Qt dlls to access it...).



If I were running TrollTech, I would say the same thing. Apparently their business model is different.

Probably because Trolltech has been bought by Nokia and turned into the "Qt Software" division not meant to generate revenues directly through license sales but probably in a much more subtle way.


Apparently you're just paying for ... well, what are you paying for exactly with the Commerical License? It isn't clear to me how Microsoft makes money on their express editions since they're basically the same versions as VS with no MFC (which is hideous to work with IMO).
If I remember well you're paying for a couple of things when buying a commercial license :


support
right to use static linking or even direct embedding of Qt into your app
right to modify Qt and distribute it as part of an app without being forced to provide the modified sources
access to some Qt solutions not yet released under LGPL
and possibly a few more I am not aware of (after all I am not a commercial license owner so others are probably more qualified to answer that question).


edit (and completely off-topic) : 1024th post, time to celebrate :)

wysota
27th April 2009, 19:10
support
Now you can buy support without a commercial licence too.


and possibly a few more I am not aware of (after all I am not a commercial license owner so others are probably more qualified to answer that question).

That's mainly it. You also get notified upon release of every new version of Qt but that's not that important.


edit (and completely off-topic) : 1024th post, time to celebrate :)

Hurray! Congrats!

fullmetalcoder
27th April 2009, 19:45
Now you can buy support without a commercial licence too.
Indeed but the point is that support comes "bundled" in the commercial license.

mhoover
27th April 2009, 20:09
Hey... leave actors and professors alone :)

Lol ... subtle.

mhoover
27th April 2009, 20:13
If I remember well you're paying for a couple of things when buying a commercial license :


support
right to use static linking or even direct embedding of Qt into your app
right to modify Qt and distribute it as part of an app without being forced to provide the modified sources
access to some Qt solutions not yet released under LGPL
and possibly a few more I am not aware of (after all I am not a commercial license owner so others are probably more qualified to answer that question).



Thanks. A bullet list like this is what I was looking for.


1024th post, time to celebrate :)

Congratulations!

bpetty
13th May 2009, 18:14
It isn't clear to me how Microsoft makes money on their express editions since they're basically the same versions as VS with no MFC (which is hideous to work with IMO).

Yes, MFC is horrendous... but that is not the only reason to get the $$ version of VS.
The express version does not allow you to use plugins... thus no precious VS Qt Integration Plugin. And if you get the $$$$ version of VS, it comes with some really nice performance analysis options.