Trolltech to Extend Dual Licensing to Qt for Windows

Trolltech, maker of the Qt toolkit which forms the basis for KDE,

announced today
that the Qt version for Microsoft Windows will be available under the GPL in addition to its current commercial license offerings for that platform. This change will take place with the release of Qt 4. The Qt version for Linux has been available under a similar dual licensing scheme for several years already. The availability of a GPL'ed Qt for Microsoft Windows will make it much easier to distribute KDE applications that run on the Microsoft Windows platform.

Dot Categories: 


by Flavio (not verified)

And please stop the complaints about FOSS on win32. If you don't like it, just don't work for it. But don't pretend people have to argue with you before porting their app to win32.

by Plisken (not verified)

But there are certain demented individuals that believe they can tell people what to work on - especially volunteer projects.

by ac (not verified)

For years Matthias and the trolls have been telling us they have no plans whatsoever to release Qt/Win under the GPL. That the last time they made a free Qt/Win available their sales dropped dramatically. That it would be a cold day in hell before they released Qt/Win GPL.

Now all of a sudden they decide to release Qt/Win under the GPL? Why? What's the new reason?

Not that I'm complaining... I'm very happy. :)

by jmfayard (not verified)

It's in the FAQ

> Why have you not done this before now?

We have been exploring ways to offer the Open Source community the opportunity to use the Windows version of Qt for some time. Until now, we have not done so because we had concerns about the viability of the Open Source model on Windows.

There are several reasons why we do it now:
* Understanding of the Open Source development model and both the benefits and obligations of using dual licensed software have been on the rise in the Windows community.
* We want to make our licensing and messaging simpler and more consistent
* We want to give the Windows Open Source development community the opportunity to use what we believe is the best application framework of its kind.

by Colin (not verified)

Exactly, and the more F/OSS developers out there that have experience of developing with QT (GPL) on Windows the more developers that may suggest to their management that they use the commercial QT for their software.

Personally, I develop apps for internal process improvements and am restricted to VB and VC++ with MFC/ATL simply due to the environment we run and current dev licenses we have. I would love to be able to ditch the shoddy MFC/ATL framework and VB in favour of C++ with the much more sane QT framework, even using more customisable IDE's such as Kdevelop and all at no cost (my software doesn't get distributed externally or sold).

by Some guy (not verified)

I like QT, but there are much more productive environments to develop in. Python, .NET/Mono, etc. Developing apps in C++ is just insane these days. I'm not suggesting KDE should be rewritten in C#, but there's just no reason to use C/C++ for most apps these days.

Python, Ruby, yes.
And there is PyQt und RubyQt, but until now they didn't exist under windows.
Hopefully this will change now :-)

who currently uses RubyTk for portability reasons :-/

by Anonymous Custard (not verified)

Well, PyQt does exist under Windows:

It's just not licensed under the GPL on that platform.

by Simon Edwards (not verified)

The FAQ may be out of date. But I'm pretty sure that you can use GPL PyQt on Windows. The reason why there is tradionally no GPL PyQt on windows is simply because there was been no GPL Qt on windows for it to work with.


by Morty (not verified)

And the GPL version works fine with the GPL Qt-X11 port, so yes you have GPL PyQt on windows already.

by Anonymous (not verified)

"with the GPL Qt-X11 port"

And adds another useless layer on Windows. The GPLed QT-X11 port for Windows is out of date as well. Luckily, for QT4 this is solved which is awesome and those people who did the porting aren't doing that useless double-work anymore (who wants to run X11 native on Windows unless compatibility reasons which are forced upon ones throat?). Kudos to Trolltech for this move!

by Luke Chatburn (not verified)

To be honest, I find QT to take roughly the same time to program medium apps (complex point of sale + subscription + stock tracking + web site sync, my current project) as C#. Both are surprisingly quick to use and provide usable output within a short space of time.

Here's my list:

C++/QT <-> C#

Java 1.4

With Java 1.5, I expect the implicit casting to make life easier and probably pop it up abive VB6, but ultimately, the gap between VB6 and the two top runners is huge for me, in terms of coding time. I doubt it can bridge that gap, but at least it'll get half way there.

Whether to choose QT or C# is a hard question that depends on the platform, required execution speed and what you want to do.

For example, writing an Image Processor, I'd use QT. C#'s VB legacy thinking makes image manipulation tricky. It can be done, but you have to jump through multiple class hoops first. In QT, just load into your QImage, get the pointer to the start of the image memory, read out each 32bits and shift&mask for each channel. QT's still better for serious and non-GUI stuff, and both are very similar for generalised GUI applications.

by Richard Dale (not verified)

What about Python and Ruby, they are both much faster to develop in than both Java and C#? When you combine the Qt/KDE apis with Qt Designer support and a modern IDE with one of these language you have a very nice RAD environment. For example, Eric the Python IDE or the next release of KDevelop with the QtRuby/Korundum bindings.

C# is a systems programming language for implementing cross-language components, it isn't a RAD language. Java is also a systems programming language descended from Algol, but with features removed to make it simpler for 'everyday' programmers. I personally found the learning curve for C# pretty steep, and was surprised how many more features it has than java. The .NET class libraries are enormous and very complex to master.

When you talk about manipulating a QImage using shift and mask, that is systems programming. I doubt very much that most VB programmers would even know what a shift and a mask are. And that sort of knowledge shouldn't be needed to write a custom business app, only if you want to write the new PhotoShop or something.

I like Python, but its only faster than Java / C# for small projects - and even then not by much. The moment you get into even the medium scale, debugging becomes a big time-sink, and the more 'serious' languages win out. Static typing changes from a chore to a powerful aid.

The key thing is the IDEs. Python kicks Java's arse for development time - if you're using a text-editor to write your Java. But Java has Eclipse, which is a simply magical IDE that leverages all of Java's reflection abilities to the full.
It completes names, writes out class outlines, method stubs and other Java verboseness for you (and with a natural and easy-to-use interface). It detects simple bugs (and 'lint' - unused or suspect code), and suggests corrections. It has a wonderful full-featured debugger that lets you inspect and edit running code. Python debugging is pretty good, but this is way better. It knows the API (with full documentation) for all the classes (Python's doc strings are nice, but I still have to go to the manual lots. JavaDoc _is_ the manual). More sophisticated features allow you to restructure your class design whenever you feel like it (e.g. change a method's name, signature or what class its in - and have all your code still work).

In short, I recommend it.

And C# has Visual Studio, which is almost as powerful as Eclipse though rather expensive and not as user friendly.

NB: I'd say that Java 1.5 has made the difference between Java and C# minimal. You could almost convert back and forth with reg-exs. Also, there's a Java compiler that targets Mono, so you can even mix Java and C#.

So I'd say use Python for page-long scripts that you don't plan to extend too far, and Java for anything else.
- Dan

by Anonymous Coward (not verified)

Repost from Slashdot

Re:Kindows???? (Score:5, Interesting)
by Bulln-Bulln (659072) on Monday February 07, @11:58AM (#11597641)
Quote from KDE-Cygwin:

Posted By: habacker
Date: 2005-01-27 14:21
Summary: source and binary snapshots of QT/Win Free Edition available

The QT/Win Free Edition is not far away from to be a full working release.

Maybe this is why Trolltech made this announcement? Trolltech propably had its reasons not to release the Windows version under GPL, but with this fork their reasons may be undermined. So maybe the guys at Trolltech thought "better done right (by us), than done buggy (by others) and give us bad reputation".

Of course this is just speculation and the close time gap between the KDE-Cygwin announcement and the Trolltech announcement could be just a coincidence.

maybe tomorrow will start to rain frogs?
maybe bill gates will release windows GPL'd?
maybe sco will become a non-profit organization?

but, by the way, this news make me a very happy child :-)

Accounting gymnastics aside, SCO have pretty much been approaching non-profit status for some time now, at least according to Yahoo! Finance's data.

by Jel (not verified)

Does this mean that the GPL'd Qt is now as Free as GTK+? Or are there still other platforms that Qt is not Free under, like embedded?

by smoerk (not verified)

QT it is not as free GTK. QT is licensed under the GPL, GTK is under the LGPL.

by ac (not verified)

According to the FSF, the GPL is more "free" than the LGPL, and is their preferred license for libraries.

Not that I really care. They're both fine licenses as far as I'm concerned. But for people who do care, that's where the FSF stands on the matter. Quite clearly, they prefer Qt's way of licensing things.

by Anonymous (not verified)

You're incorrect. The page you're referring to doesn't say that the GPL is more "free" than the LGPL. What's relevant to this discussion is the following paragraph:

"Using the ordinary GPL is not advantageous for every library. There are reasons that can make it better to use the Library GPL in certain cases. The most common case is when a free library's features are readily available for proprietary software through other alternative libraries. In that case, the library cannot give free software any particular advantage, so it is better to use the Library GPL for that library."

As for UI toolkits, there's a plethora of "alternative libraries" and the LGPL is therefore the preferrable license. The FSF aren't the GPL-zealots they're sometimes made out to be, and they even backed up Xiph on the license change of the Ogg/Vorbis implementation from LGPL to BSD-style in order to "boost" the codec.

by Anonymous (not verified)

Freedom? So having not the freedom to link to a library (GPL) is more free than having the freedom to link to a library LGPL) -- both when not having the LGPL. I say no, unless you want all software being licensed under the GPL (there goes license diversity!).

-1 troll because of (pick one)
A) KDE zealot (misquoted disinformation)
B) RMS propaganda (GPL zealotism)

I picked A!

by ac (not verified)

That's the freedom of the potential abuser you are talking about. If you want to talk about keeping the code and everything which makes use of that code free then GPL is indeed more free than LGPL. Many developers have the latter in mind when wanting to ensure that their contributions stay free.

by Eric Laffoon (not verified)

> So having not the freedom to link to a library (GPL) is more free than having the freedom to link to a library LGPL(?)

Whose freedom? For users GPL promotes a greater freedom because it insures that whatever is distributed will remain free for them. For users you would think that would be important. For companies an argument can be made for linking to LGPL, but it's not a very strong one.

1) No more than a few percent of the total cost of developing a software application is the cost of licensing a toolkit. All one has to do is have the neurons to add up the growth of Trolltech to see that they have a lot of customers who understand this basic math... even if those people who have nothing left to harp about but how Trolltech refuses to give away it's core business for corporate welfare don't.

2) Both KDE and GNOME have LGPL'd core libraries. Show me the piles of commercial shrink wrap software being distributed based on them? Show me the Linux users waiting in droves outside their computer store to shell out for these imaginary programs? I see a little of Qt based stuff and a some cross platform other toolkit programs. In fact aside from the proprietary model losing viability outside of contract work and niche markets like we all talk about as the success of OSS there just isn't a substantial market potential compared to Windows, unless you go cross platform.

3) Given that you can dual license as well as build a service business, as many in the Linux community have, it's a silly argument to whine about not having corporate welfare. I mean Red Hat sells GPL software with a per seat license, they get a good price and they do it with a service business.

> A) KDE zealot (misquoted disinformation)

A GNOME troll I presume? Whatever happened to the good old days when Trolltech was attacked for not having a GPL'd Qt? The one consistent factor between the "it should be GPL" and "It shouldn't be GPL" attacks are the attacks. If Trolltech were to tell their customers not to give them any more money because they weren't charging, then go out of business, then quit maintaining Qt... then would the critics be happy? Probably not, because then Qt would go to a BSD license, somebody would maintain it and they would complain it should be GPL. After someone decides they hate someone or something then everything else is just lame rationalization, especially when it doesn't hold up to the light of cold hard reason.

Why would somebody take the "Qt GPL sucks" position? Either they don't understand reality or they want to prevail with their ventures and wish Qt would go away. Here's a thought... Don't use Qt and then don't complain about it.

by mikeyd (not verified)

Qt is freeer than GTK+ and has been for years, claiming it isn't is pure FUD.

by smoerk (not verified)

please explain...

by ac (not verified)

Hope that helps. FYI--I don't necessarily agree with the FSF in a lot of cases, but this serves to explain why THEY (and presumably, the person you're asking) think the GPL is "more free" than the LGPL.

by Plisken (not verified)

Only if you have a demented definition of what the word free means - as in the Stallman definition.

by pinky (not verified)

>Only if you have a demented definition of what the word free means - as in the Stallman definition.

Do you would say this is a demented definition:
- The freedom to run the program, for any purpose
- The freedom to study how the program works, and adapt it to your needs
- The freedom to redistribute copies so you can help your neighbor
- The freedom to improve the program, and release your improvements to the public


I think this is a really clear definition and it would be hard to argue that this definition don't define freedom for computer programs.

by Plisken (not verified)

Users don't have rights. Only developers do. Stallman doesn't care about programmer rights. LGPL is more free than the GPL for anybody that is rational.

by blacksheep (not verified)

> Users don't have rights.

That's exactly the point why LGPL (Lesser GPL) is less free than the GPL, according to Stallman. Because users loose rights, simply because any program that wants to use that library will have to be free.
That's also why Stallman finds GPL more free than BSD.

In terms of the programmer, yes, they loose freedom.

by Richard Dale (not verified)

"LGPL is more free than the GPL for anybody that is rational."

Umm, so anyone who disagrees with you is 'irrational'?

There are all sorts of problems with the LGPL, such as defining what 'linking against' means. For instance, if I have a proprietary java .jar file that I use in my java app, can it be said that the app 'links against the .jar file'? Maybe it does, maybe it doesn't. If you want to write a commercial app, you should get a commercial license, the LGPL isn't suitable with these vague terms and potential legal problems.

by pinky (not verified)

>Users don't have rights. Only developers do. Stallman doesn't care about programmer rights.

Stallman cares about progremmers right and users right!
This is essential in every free society. You are free to do what you want, as long as you don't cut of the rights of other people. Therefor you don't have the right to take the car from your neighbor if you like it or kill a person if you don't like there attitudes. Your right to do what you want ends at that point were the right of others and the whole society begans.
That's the basis of a free society and also of copyleft licenses for software.

by ac (not verified)

> Users don't have rights. Only developers do.


Then let's shoot all users for shouting that the developers are not listening to them!

by ac (not verified)

Well, free software is not a human right, I think we can agree to that.

Then, what rights do users have? I mean, I buy a DVD and I don{ t even have the right to watch it on the UK because of zones. And I paid for it! What right am I supposed to have over software I have paid nothing for?

Where do those rights come from?

by mikeyd (not verified)

He started the whole free software movement. Anyone else who is devoted to free software is following his movement, and following him. So I think his definition of what the movement is about should be the right one.

by AC (not verified)

Sorry, but that´s just propaganda. Free software has existed for much much longer than the GNU project. Hell, go read their manifesto, they say they are taking lots of free software written by others.

by Anonymous (not verified)

You could not be more wrong even if you tried. GTK+ is released under the LGPL, and the LGPL gives you more freedom than the GPL, just as a BSD-style license is more free than the LGPL (and public domain is more free than BSD).

by MamiyaOtaru (not verified)

BSD gives you more freedom to do whatever you want with the code and use it in a project licensed however you want. However that also means it lets you prevent others from seeing what you do with it. You can do more with it, but you can also make sure others do less with the results. You are given the right to restrict others' rights.

GPL forces you to give the same rights to others that you got yourself. There's less you can do, but it ensures others retain their rights. GPL is imho only bad for people who want a handout: the ability to take code and give nothing back, and I don't feel sorry that this isn't possible with GPL. MY rights are preserved, that is freedom.

by Anonymous (not verified)

True, all of that applies to the BSD-license, but that has very little to do with either the LGPL or the GPL. Your second paragraph applies equally much to the LGPL as it does to the GPL.

If I develop a library under the LGPL and proprietary software links against it: good! That's the reason I chose the LGPL. MY rights are preserved, and that is freedom!

by mikeyd (not verified)

But the end users have more freedom under the GPL, which is what Free Software is all about. See the link above to FSF position.

by Anonymous (not verified)

No, end users have the same amount of freedom under both the GPL and LGPL since the license only covers distribution. For developers, the LGPL is more free.

As for the question of which license is better for free software as a whole? It all depends on the situation, and the FSF clearly states that in the document to which you are referring. The FSF doesn't take a stand on which license is more free.

by mikeyd (not verified)

No, because the end users of something LGPL may end up using a non-free program. Wheras the end user for a GPL program will always get a GPL one.

by Anonymous (not verified)

Your argument would be valid if the library in question was GPL-only, but since Qt is dual-licensed you might end up running non-free software anyway.

by Joe Kowalski (not verified)

In which case, the person using a proprietary QT based application still supports free software as a portion of the money they spent on the software goes to Trolltech, who in turn releases their work under the GPL. With a proprietary GTK app, none of the funds that the buyer has spent goes back to Owen & company to support their work.

by Andre Somers (not verified)

Embedded is allready available under GPL. Only, I believe GTK is LGPL, not GPL. That makes it possible to create closed source commercial applications with it without paying anyone. With Qt, you'd have to pay Trolltech (and get a great toolkit in return that saves you a the money spend on a licence easily in developers time...)

by brockers (not verified)

Qt has been more free than GTK+ for almost 5 years now. Its only the ignorance of the Gnome community (or plain old FUD) that says otherwise.


by Anonymous (not verified)

Actually, it's simple logic (or "rational thinking") that says otherwise. The LGPL is a more free license than the GPL.

by Carewolf (not verified)

It is more free the same way anarchy is more free than democracy. People are more free to screw you.

No, fewer rules doesn't mean more personal freedom.

by Anonymous (not verified)

That has to be the worst analogy in history.... but alright, turnabout is fair play:
The LGPL is more free than the GPL the same way democracy is more free than a dictatorship.