Qt-interest Archive, October 2007
Commercial Qt and OSS (relates to: OSS Qt and not so free libs)
Message 1 in thread
Hi,
just recently a similar question was turning in my head, and since this
subject "OSS Qt and not so free libs" came up I thought I'd give it at
try here.
But actually my question "is the other way around", so I'm starting this
new thread here. This is what I want to do:
I have a commercial Qt license. In my spare time I am developping an
application which I want to release with source code, if possible under GPL.
Naturallly I cannot release all source code of Qt, for example the XML
module(*) (assuming it was not available in the OSS version of Qt). I
could only release the Qt OSS version which might lack some
functionality of the commercial Qt.
So hence the question: can I put *my* source code under GPL, release the
final binary and state: "If you actually want to compile it yourself you
need the Qt commercial or an equivalent of your choice?"
Or does the GPL force me to publish *all* source code I link to and
hence I could not use Qt commercial (at least not the functionality
which is not available in the Qt OSS)?
As I understand Trolltech now offers some other Open Source license
models of my choice: LGPL and others (although this FAQ
http://trolltech.com/developer/knowledgebase/159/ contradicts this -
outdated?) - which one would allow me to "publish as much as possible of
my source, but not all?"
In the other thread especially those comments seem to be relevant:
Konrad Rosenbaum wrote:
> I don't recall anything saying a GPL project could only link to other GPL projects. Only that if you Link to GPL, you have to be gpl. If you link to closed you need to be sure you don't violate your closed license. The closed doesn't have to become GPL.
So this seems to imply that I can put *my* source code under GPL and
publish the Qt as binary only, since the Qt commercial is clearly not
under GPL, and I would not violate GPL, because the GPL only states "if
you link to GPL libraries your app must also be GPL" - right?
Adam M wrote:
> You may build and link any code with anything else, be it GPL or otherwise, you just cannot redistribute the built binary. GPL is a redistribution license for the source code not a EULA.
This on the other hand seems to indicate the contrary, that as soon as I
link my GPL app to something non-GPL I must not redistribute it.
So my other choice would clearly be to distribute it under my own WYDIYF
(Whatever You Do It's YOUR Fault) license and release whatever I like
(and am permitted to), but I'd really like to distribute it under GPL -
it does not make sense to have dozens of Open Source licenses around,
does it?
But am I allowed to in this case? Is a GPL application allowed to link
to non-GPL libraries? (refers again to "OSS Qt and not so free libs)
Cheers, Oliver
(*) For the sake of argueing you could also assume that I use a "Qt
solution" such as the Icon Format Solution which is clearly not
available in the Qt OSS and clearly not GPL, either (it's purely
commercial).
--
[ signature omitted ]
Message 2 in thread
Hi,
On Tue, October 16, 2007 11:39, Till Oliver Knoll wrote:
> I have a commercial Qt license. In my spare time I am developping an
> application which I want to release with source code, if possible under
> GPL.
So far no problem. If it runs with free Qt then you can distribute under
GPL. I'm doing the same for my home projects - I have my commercial
license installed (for some work I do take home), but release my
home-grown code as GPL.
> Naturallly I cannot release all source code of Qt, for example the XML
> module(*) (assuming it was not available in the OSS version of Qt). I
> could only release the Qt OSS version which might lack some
> functionality of the commercial Qt.
> (*) For the sake of argueing you could also assume that I use a "Qt
> solution" such as the Icon Format Solution which is clearly not
> available in the Qt OSS and clearly not GPL, either (it's purely
> commercial).
If you don't link to any other GPL'ed code you can add this exception to
your version of the GPL (but I believe you have to call it "GPL with
exception" then). Of course this would make your code incompatible with
any other GPL-code.
> So hence the question: can I put *my* source code under GPL, release the
> final binary and state: "If you actually want to compile it yourself you
> need the Qt commercial or an equivalent of your choice?"
Yep that would be ok.
> Or does the GPL force me to publish *all* source code I link to and
> hence I could not use Qt commercial (at least not the functionality
> which is not available in the Qt OSS)?
The original GPL does, your modified GPL may not...
> As I understand Trolltech now offers some other Open Source license
> models of my choice: LGPL and others (although this FAQ
> http://trolltech.com/developer/knowledgebase/159/ contradicts this -
> outdated?) - which one would allow me to "publish as much as possible of
> my source, but not all?"
These are licenses that are GPL-compatible anyway.
Konrad
--
[ signature omitted ]
Message 3 in thread
Konrad Rosenbaum schrieb:
> Hi,
>> ...
>> Naturallly I cannot release all source code of Qt, for example the XML
>> module(*) (assuming it was not available in the OSS version of Qt). I
>> could only release the Qt OSS version which might lack some
>> functionality of the commercial Qt.
>>
>
> If you don't link to any other GPL'ed code you can add this exception to
> your version of the GPL (but I believe you have to call it "GPL with
> exception" then). Of course this would make your code incompatible with
> any other GPL-code.
Okay, thanks! That clarifies things. And also answers my next question
what *if* I link with *other* GLP code.
As a matter of fact I do link with GPL code, ImageMagick, which made the
Qt Solution "Icon Format" superfluous (since ImageMagick *.ico support
is somewhat more elaborated, it supports bitmap, 8bit and 32bit images
at the same time).
And since I am using the XML module I just hope that this one is also
available in the Qt OpenSource edition, else that would obviously not
allow me to release my little tool ;)
Cheers, Oliver
--
[ signature omitted ]
Message 4 in thread
Till Oliver Knoll wrote:
>>> Naturallly I cannot release all source code of Qt, for example the XML
>>> module(*) (assuming it was not available in the OSS version of Qt). I
>>> could only release the Qt OSS version which might lack some
>>> functionality of the commercial Qt.
[...]
> And since I am using the XML module I just hope that this one is also
> available in the Qt OpenSource edition, else that would obviously not
> allow me to release my little tool ;)
I would suggest that you actually link against the Qt Open Source edition
when producing executables. If nothing else, it will help you verify that
you're not using anything specific to the Commercial Edition you normally
use.
Perhaps there should be a table like the one on the Qt Commercial Editions
page that shows what's available in the Qt Open Source Edition:
http://doc.trolltech.com/4.3/commercialeditions.html
Hint: The XML module is available in the Open Source Edition.
David
--
[ signature omitted ]
Message 5 in thread
David Boddie schrieb:
> Till Oliver Knoll wrote:
>> ...
>> And since I am using the XML module I just hope that this one is also
>> available in the Qt OpenSource edition, else that would obviously not
>> allow me to release my little tool ;)
>
> I would suggest that you actually link against the Qt Open Source edition
That was exactly my intent ;)
> when producing executables. If nothing else, it will help you verify that
> you're not using anything specific to the Commercial Edition you normally
> use.
Exactly.
>
> Perhaps there should be a table like the one on the Qt Commercial Editions
> page that shows what's available in the Qt Open Source Edition:
>
> http://doc.trolltech.com/4.3/commercialeditions.html
I have seen this table and was indeed desperately looking for a table
like "Commercial vs. OpenSource".
In fact I had some trouble actually finding the download button for the
OSS Qt version (I was more expecting it to find it under "Products/qt"
instead of "Developer zone", but maybe there's a reason for the somewhat
hidden place ;) )
And eventually I came up with the FAQ "What's the difference between OSS
and commercial Qt" (http://trolltech.com/developer/knowledgebase/120/)
from which I concluded that "pretty much everything must be included in
the OSS version" :)
> Hint: The XML module is available in the Open Source Edition.
Good to know ;)
Thanks, Oliver
--
[ signature omitted ]
Message 6 in thread
Till Oliver Knoll wrote:
> And eventually I came up with the FAQ "What's the difference between OSS
> and commercial Qt" (http://trolltech.com/developer/knowledgebase/120/)
> from which I concluded that "pretty much everything must be included in
> the OSS version" :)
Well, components that are licensed in a GPL-compatible way aren't included,
of course, but to all intents and purposes... ;-)
David
--
[ signature omitted ]
Message 7 in thread
On Tue, October 16, 2007 16:12, Till Oliver Knoll wrote:
> And since I am using the XML module I just hope that this one is also
> available in the Qt OpenSource edition, else that would obviously not
> allow me to release my little tool ;)
Cheer up, it is available - I'm also using it in both free and commercial
projects.
As far as I can tell there are only very few things not available in the
GPL'ed version of Qt4, eg. ActiveX-support on Windoze and commercial
DB-drivers. But then again: (Radio-)ActiveX can drive you insane in a
minute and I don't know many people who enjoy the pain of configuring
Oracle setups enough to do it outside of work, so it isn't much of a
loss... ;-)
Konrad
--
[ signature omitted ]