Well, recently I found a problem about licensing.
I have an open source project on GitHub, recently I need some codes which using GNU GPL, but my project is using GNU LGPL, so that's the problem.
So how can I use these code? I don't want to change my license. Ask for permission from the original developpers or?
Asked
Active
Viewed 2,697 times
7

BeckNo9
- 91
- 1
- 4
-
2http://opensource.stackexchange.com/ is a better place to ask. You need to ask permission from original developers, to get them to dual-license their code. – Basile Starynkevitch Feb 13 '17 at 12:51
-
2Regarding close votes/[opensource.se]: It is my understanding that licensing questions are no longer part of our core site scope (see the [help/on-topic], but that [simple licensing questions are still considered on-topic](http://meta.softwareengineering.stackexchange.com/q/8284). This question is not asking for “legal advice or aid” but inquires about the basic GPL–LGPL relationship – a question that falls well into the competence of a software developer using and creating open source software. – amon Feb 13 '17 at 13:16
-
@amon: I've noticed a handful of users VTC all licensing questions no matter what and will make a meta post when I'm back at a computer. – whatsisname Feb 13 '17 at 17:50
1 Answers
14
The combination of GPL code and LGPL code must be licensed under the GPL. If you want to use that code, you'll have to change your license, or refrain from using it. If the other project would want their code to be used in LGPL projects, they'd have licensed it under the LGPL – I doubt they'll give you special permission.
The LGPL is the same as the GPL plus some extra permissions. The key difference is that the LGPL strips the GPL from most of its “virality”. But the only reason to use the GPL instead of another license is that it forces dependent code to also be licensed under the GPL. It is therefore possible to use LGPL code in a GPL project but not the other way round.

amon
- 132,749
- 27
- 279
- 375
-
1For so many years insistent people have answered this question wrong. What a joy to see the first answer get it perfectly correct! Thank you for existing and sharing your knowledge. – GlenPeterson Feb 13 '17 at 15:18
-
3*"I doubt they'll give you special permission"* - asking won't hurt. And as long as we do not know anything about the projects the OP is talking about, or how much code he wants to reuse, I would not make such a biased assumption. (+1 anyway). – Doc Brown Feb 13 '17 at 15:41
-
1@DocBrown Using the GPL is a very political statement: “Code wants to be free. If they want to use my code, they'll have to liberate theirs.” I find it unlikely someone would sway from this position: “Oh, nevermind about freedom.” However, the GPL license may be chosen simply because it's popular in some circles, unaware of its restrictions. In that case, and especially if its a small project with few authors, could such a question prompt a relicensing to a license that's closer to the author's intentions. – amon Feb 13 '17 at 15:45
-
3Just to pick a nit: LGPL keeps its virality within the library licensed under LGPL, but not inside the product using it. This e.g. makes people who use a library in a commercial product and fix a bug in the library, or add a feature to it, push these changes upstream under LGPL. – 9000 Feb 13 '17 at 16:38
-
2If the GPL software author allows the OP to use it LGPL, it is now LGPL to the whole world. – whatsisname Feb 13 '17 at 17:52
-
1@whatsisname: If the GPL software author allows the OP to use a small portion of his code under LGPL, the remaining parts of the components can still be kept under GPL, since LGPL and GPL are compatible and GPL applies always to a work "as a whole", not automatically to its individual parts. – Doc Brown Feb 16 '17 at 22:11
-
1@DocBrown: Whether that is meaningful or not depends on whether that "small portion" of the code is the special sauce to the GPL project or not. – whatsisname Feb 16 '17 at 22:47
-
This however shows the exact opposite: https://softwareengineering.stackexchange.com/a/238779 – Sebazzz Feb 21 '22 at 16:44
-
@Sebazzz No, the answers are in agreement. Here, I'm saying “LGPL + GPL → GPL”. Bart van Ingen Schenau's answer more specifically says "LGPL-3.0 + GPL-2.0-or-later → GPL-3.0-or-later". – amon Feb 21 '22 at 20:49