As I understand, Cheerp is a tool in a similar way it is GCC, licensed with GPLv2. The license applies to the work reached by the copy rights, but not for use restrictions.

So, as long as one does not distribute it (as code or object) with the programs created, the resulting program is not restricted.

My confusion arieses with the text in the page:

As parts of Cheerp are licensed under GPLv2, a copyleft license, if you distribute your application you must provide your users access to its sources under the same license.

That is true if the application is a derivative work of a GPLv2 work, Cheerps in this case. But it is not the case.

So, the following addition looks like a violation of GPLv2, because adds up use restrictions to the license:

If you are using Cheerp for developing closed-source, commercial applications you must purchase a commercial license.

And if you don't distribute a GPLv2 program with the same license (pure GPLv2, without additional restrictions), you are violating the license.

TL;DR: I think that you can't add a use restriction to a GPLv2 licensed program.

  • Note that a compiler will link your binary with standard and runtime libraries, if these are under GPL then so is your binary. GCC provides a runtime library exception for its bundled libraries, Cheerp may not. – sambler Aug 10 at 11:15

Having read the original page (and as a side-note it would be helpful if you were to provide links in your questions), what is going on is not a licence violation, but dual licensing.

They say

Cheerp is distributed as a Free and Open Source Software under the University of Illinois/NCSA Open Source License (core compiler) and under the GNU General Public License v2 (libraries).

As I understand it, the people distributing cheerp are also the copyright holders to the entire project. They will let you have it under a combination of NCSA/Illinois and GPLv2, but they remind you that if you get it on that basis and you want to develop a derivative product, then the GPLv2 bits of cheerp and derivatives thereof have to remain GPLv2 in your derivative. NCSA/Illinois is a weak copyleft licence, and doesn't have a similar requirement.

They also say that if you want to develop a closed, proprietary product based on cheerp, that they have a commercial license that you can buy from them, which (presumably) will permit that. A number of big free-software projects run on this basis; it may not be universally loved, but it's perfectly respectable.

Your Answer


By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.