Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Firstly, I realize that this is a programming Q&A site, and not a place for legal advice.... Just trying to get a basic idea of what the downsides to using an LGPLv3 library might be.

What are the differences between GNU LGPL v2.1 and GNU LGPL v3?

In particular, I know that regular GPLv3 has many anti-drm and anti-patent clauses. In principal I don't have anything against these clauses, but I will these suddenly apply to the main application if I choose to use an LGPLv3 library.

The rules of LGPL v2.1 seems to only apply to the library that you use or modify. It says nothing about the main application. (Assuming no static linking etc.)

Thus, in the niche-market software provider where I work, we regularly use (and contribute to) LGPL licensed libraries, without needing to open-source our main application.

Does this change in LGPLv3?

The question got a couple of answers, but none that address any new obligations that the main application might have.

To clarify: I'm asking about the LGPL v3, not plain GPLv3. Do any of the Tivoization / patent grant requirements "bleed through" from an LGPLv3 library to the host application?

share|improve this question

migrated from Oct 16 '11 at 11:32

This question came from our site for professional and enthusiast programmers.

If it's about lgpl you should remove the gpl tag from your question :-) gpl is something, lgpl is something else. – xanatos Oct 18 '11 at 5:48

The main difference in GPL 2->3 is Tivoisation and patents.

You cannot use a GPL app but prevent people replacing it with their own version (even if you give them the source) by encrypting/signing the binaries or restricting the ability to install new software.

The sections on patents is trickier, it's not entirely clear how much you can require this in a licence agreement, where it would apply and even if software is patentable in your location.

For a conventional desktop app there isn't really much difference from GPL2.1->3

share|improve this answer
Actually the text of the GPLv3 does not define the term distribute. Convey and propagate are defined with the explicit statement "Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying." The Affero GPL adds the additional limit you describe. – Craig Oct 17 '11 at 16:41
@Craig - sorry I misread 'brought AFGPL into the fold' to mean included AFGPL. I think it was in the early drafts - have corrected the answer. – Martin Beckett Oct 17 '11 at 16:53
@Martin Thanks for the answer. To clarify: I was specifically asking about "L"GPL. I'll update the question to make this more clear. – nonot1 Oct 17 '11 at 21:02
@nonot1 - I would have thought the '3' ness and 'L' ness were pretty independant. All the rules for GPL3 don't seem to be affected by being in a library. – Martin Beckett Oct 17 '11 at 21:18

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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