4 ms·
You can use Qt for commercial projects for free, including mobile platforms. This is not highly advertised, but you can... :)
by zerr 10y ago
You can use Qt for commercial projects for free, including mobile platforms. This is not highly advertised, but you can... :)
- ktta 10y agoAFAIK you'll have to have a GPL your code right? If you want to keep the source closed, then you'll have to get a commercial license which costs money. Can you refer me to where you saw that you can use Qt for free with being able to keep your source closed? (you still can monetize open source programs so there's that) Or are you referring to LGPL?
- gcp 10y agoQt is LGPLv3, not only GPL afaik?
- jtuente 10y agoThe licensing has changed a bit over the past year. The biggest difference between the LGPL and GPL versions is that Charts and Data Visualization aren't available under LGPL, and Qt Quick is limited to OpenGL. https://www.qt.io/licensing-comparison/ https://www.qt.io/licensing-comparison/
- zerr 10y agoQt is LGPL (3 ?), so you can use it for closed source proprietary projects assuming that it is possible to re-link your project (with Qt). I.e. you should use Qt as .so/.dll dynamic lib for desktop apps. For Android it is same as I understand. As for iOS - where as I remember you have to build static binary - just providing your .obj files is enough. So it is compiled, not open source.
- slavik81 10y agoIf you use dynamic linking and target open platforms, like desktops, you can easily fulfill all the terms of the LGPL [1] without releasing your own code. See 3.7 of the Qt Legal FAQ [2]. [1] https://tldrlegal.com/license/gnu-lesser-general-public-license-v3-(lgpl-3) https://tldrlegal.com/license/gnu-lesser-general-public-lice... [2] https://www.qt.io/faq/#_Toc453700715 https://www.qt.io/faq/#_Toc453700715
- messutied 10y agoWow I didnt know this, thanks! I'll look it up :)
- plq 10y agoI'd love to see some evidence to back your claims regarding mobile platforms. To satisfy LGPL, your users need to be able to swap Qt versions. For desktop platforms, that's trivial to do: Use dynamic linking and your users will be able to fiddle with the shared library files to their heart's content. However, for IOS or Android, the moment the user changes the contents of your package, your signature is void and the vanilla platforms don't let the user install modified versions of your binary. For IOS, there are additional hurdles like the requirement to statically link or the licence incompatiblility when interfacing with IOS which to me boils down to this: If you are distributing a non-free app built with Qt Open Source via Google's Play Store or Apple's App Store, you are in violation of the terms of Qt's license. The fact that the Qt company tries to play nice with the industry doesn't make it any less so. I'd love to be proven wrong, but I'm just tired of watching this subject being discussed with nothing more than handwavy arguments, winks and smileys.
- aeruder 10y ago100% correct. Far too many misinterpretations of the LGPL out there seem to ignore the requirement that the LGPL'd portion must be able to be replaced/updated. I've seen way too many LGPL-licensed embedded-C libraries and VHDL libraries where it just does not make any sense. If your target platform doesn't have a dynamic linker, then LGPL is the same as GPL. There are some hacks where people distribute unlinked .o/.obj files. This is acceptable as well, but I don't see it too often.
- zerr 10y agoI've answered below: https://news.ycombinator.com/item?id=12653246 https://news.ycombinator.com/item?id=12653246 So for mobile platforms you can publish compiled .obj files.