I have written a program that uses a GPLv2 library. The source code to my program is publicly available under an MIT license. For the sake of this example let's say my program links to the GPL library statically.

I would like to make the program available to download in binary form.

What license can / should the resulting binary program be covered by? Can I license my program to end users under the MIT license, or must it be GPL?

  • 1
    Rather than asking legal questions to random strangers on the Internet I suggest you should obtain an opinion on this topic from an attorney who is well-versed in copyright law, and follow his advice. Full disclosure: I am not a lawyer.. Commented Apr 23, 2020 at 19:22
  • 1
    @BobJarvis-ReinstateMonica How do we know an expert in copyright law won't answer the question? In any case, I'm not asking for formal legal advice, I'm looking for opinions in a forum where people who may have some experience in this area. If someone wants legal advice, of course it's best to contact a lawyer.
    – j b
    Commented Apr 24, 2020 at 11:15

2 Answers 2


You are free to distribute your source code under the MIT license. But the software in its entirety is derived from GPLv2-covered software, and therefore must be made available under the GPLv2 as well. In particular, your binaries directly contain GPLv2-covered software.

Because you are not the full copyright holder of this software but only a licensee of the GPLv2-covered components, you have no other choice (except not distributing binaries at all).

It is also possible to make an argument that your source code would be bound by the GPLv2, but that is not currently the mainstream interpretation.


By law you have the sole rights to any of your own creative works. This include code written by you.

No-one has any right to demand you to license your work under any license they want. Instead, you have the freedom to choose any license for your work yourself.

If you combine your code with code licensed under the GPLv2 then you are obligated to release only the source code of said code but not yours. Licensing the end product is tricky because you only hold the copyright to your own code but at the same time no one can force you the terms of your license for your code. So basically you have to explain this to the end-user that there are two separate codes with different licenses (one with the GPLv2 and other with MIT) and not one code with either license. This myth like Gnu licenses somehow "infect" code is outright lie. The law protects you and your rights. Even if you have contributed to any project under the Gnu license you still have the right to demand that your contributions would be removed from the project if one day you choose so. Because only you have the copyright to your code and no license can ever take that away from you. This is actually the biggest legal problem (but not the only one) of restrictive copyleft licenses. Because with permissive open source licenses both the contributor and the "project manager"/"Copyright holder of the initial code" have the same rights (but no obligations) therefore there would be no reason for anyone ever to withdraw their code.

Many people fail to understand that there is no contract or license that can take away your right given by law. The same way for example, if child labour and slavery are banned by law then even if someone manages to contract a minor or sells themself into bondage than such contracts are legally void. Not only that but the other side to sign such contracts gets punished by the law.

  • This seems more like a rant than an answer, and it's a pretty odd point of view as well. You really need to support some of the assertions you're making.
    – MadHatter
    Commented Apr 14, 2019 at 20:49
  • @MadHatter What assertions? I'm talking about the law. You want me to cite the copyright law or the labour law? What seems to be like a rant to you?
    – Smart455
    Commented Apr 14, 2019 at 20:54
  • 2
    "If you combine your code with code licensed under the GPLv2 then you are obligated to release only the source code of said code but not yours" this contradicts GPLv2 s2b, for example. And if you're going to start talking about "the law", you need to make reference to jurisdiction, because copyright law varies between them; failure to be clear about which jurisdiction you have in mind doesn't help the appearance of your answer.
    – MadHatter
    Commented Apr 14, 2019 at 20:57
  • You are right. After article 13 things in EU got bit more confusing. I was originally talking about U.S. Digital Millennium Copyright Act but for the most part copyright works roughly the same way in most western civilised world. In any case, GPLv2 s2b talks about "derivative work" meaning you have edited already existing code - not added your own code in different file. The whole 2 clause is talking about "modifying" and actually it's good that you point out that when not modified, according to that clause - it doesn't even have to be redistributed in source form.
    – Smart455
    Commented Apr 14, 2019 at 21:10
  • You are right that GPLv2 s2b does not require source redistribution when redistributing unmodified; s3a, however, does require that. s2b makes it clear that the derivative work is the work as a whole, not just the individual source file. It's good that you're thinking about the GPL in a detailed way, but I would strongly advise against considering a work to be arbitrarily divisible into unrelated subworks for copyright purposes. Courts have ruled on the GPL already, and none has supported that viewpoint.
    – MadHatter
    Commented Apr 15, 2019 at 7:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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