Wanted: LGPL Legalese Translation

I was asked today if LGPL licensed code could be used in a commercial application. Trying to answer the question, I came to realise I couldn’t accurately answer the specifics. Is somebody able to provide a clear and simple explanation on where LGPL code can be used, and under what conditions? Every time I read the license I convince myself of another interpretation.

8 Comments

  1. Posted July 31, 2007 at 9:17 pm | Permalink

    http://creativecommons.org/licenses/LGPL/2.1/ has a reasonably good writeup…

    As for the LGPL, I believe you can — provided you publish modifications to the LGPLed code

  2. thidney
    Posted July 31, 2007 at 9:20 pm | Permalink

    You probably need source-lawyer and this is what I am certainly not.
    AFAIK LGPL code is GPL with one except. It could be used for linking with closed-source application. I think you can`t use (reuse) source code if your code is not GPL bud you can link to it whenever you like.

  3. Posted July 31, 2007 at 9:29 pm | Permalink

    http://www.jboss.com/pdf/Why_We_Use_the_LGPL.pdf

    Thats a good explanation by Jboss.

    As far as I know:
    if proprietary software is statically linked with LGPL software -> the product is LGPLd
    if proprietary software is dynamicallylinked with LGPL software -> the product is NOT LGPLd

    Extended or derived software based on LGPL Code is LGPLd and the changes / extensions have to be contributed.

    The LGPL was designed for libraries, so proprietary may link to libraries without being in GPLd/LDPLd.

    I hope I could help

  4. Kevin Krammer
    Posted July 31, 2007 at 9:57 pm | Permalink

    If we are just talking about using the LGPL Code (not changing it, etc), the idea is basically that the recepient must be allowed and able to change the LGPL part of the resulting software.

    This is why LGPL libraries are usually dynamically linked, since linking them statically means that the software must be available in re-linkable form, e.g. object files of the non-LGPL part (probably inside a static library).

  5. David
    Posted July 31, 2007 at 10:26 pm | Permalink

    At least we (a fairly big medical company) use dynamically linked LGPL libraries in our Products. I’d go with the “you can use it in closed source applications without publishing your source as long as you don’t modify it”-explanation.

  6. Lloeki
    Posted July 31, 2007 at 11:10 pm | Permalink

    You said: “… could be used in a commercial application”
    Answers seem to assume that commercial is equivalent to proprietary (and maybe you assumed so in your post, and may be the cause of your question), which is not true. This is the free as in beer vs free as in speech difference.
    So let’s make my answer twofold:
    - Commercial: It is explicitly stated in LGPL (and GPL) that one can charge for the software (thus not free as in beer, but still free as in speech). That’s part of freedom given by the GPL: you have the freedom to charge for it. An example of a successful business model based on this is SuperWaba.
    - Proprietary: As stated before, one can link LGPL software provided one 1. provides any modification to the LGPL code back to the community, and 2. define clearly the interface (API) between closed-source and LGPL code, so that one can create drop-in replacement of either the LGPL code or the proprietary software.

    I hope this has clarified this a bit.

  7. wisacre
    Posted August 1, 2007 at 8:59 am | Permalink

    A question asked “if LGPL licensed code could be used in a commercial application” is not at all a difficult question.

    Of course it can. Even GPL code can be used in a commercial application

    But it is not the question you meant to ask. You asked in a very unprecise and/or confused way. Because what you really meant was ‘closed source’ application, not ‘commercial’. These two are not the same. (There are closed source applications which are not commercial [they are given away for free], and there are commercial applications that are not closed source [and even GPL].)

    So, yes, you can link to an LPGL application/library from a closed source application as long as your linking is dynamic, not static (and you respect the other rules of the LPGL license).

  8. Joe
    Posted August 21, 2007 at 10:44 am | Permalink

    But if you dynamically link to the LGPL library in a closed sourced application do you have to provide the source code for the LGPL library? Also what do we mean by “provide” or “distribute” ? Is it enough to provide source code to users upon request or do you have to give to them when they download the app? I mean all of these various licenses seem to be geared totally toward programmers — virtually all of the users of the product I’m currently working on will not be programmers so it seems weird to clutter up the download with a bunch of source code that will, if anything, scare them.