Slashdot Mirror


Can You LGPL an Application?

Tim writes "Can you really use the LGPL for an application--that is, code that isn't part of a library? I've been reading over the LGPL again in preparation for licensing an application of my own, and I feel that the LGPL would best fit my needs/wants. However, section 2a of the LGPL makes it very clear that a work 'based on the Library' must 'itself be a software library.' Section 0 also makes it clear that a 'library' means 'a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.' So, given all this, why is it taken for granted that you can release an application/executable under the LGPL?" It must be stated that applications link to libraries and are not based on them. I may be splitting a few hairs here, however. What do you think?

9 of 15 comments (clear)

  1. Maybe I need to be more clear... by Tim · · Score: 2

    On reading my own submission, I think perhaps that I need to clarify my own question a tad...

    The reason I even thought about this was due to the fact that licensed code is always referred to as a "Library" in the LGPL. Not surprising, given that LGPL originally meant Library GPL, but still confusing, if you're wanting to license an application under the LGPL, rather than just a plain old software library.

    When I read more into the text of the LGPL, I found what I noted above, and that really bothered me. If a modified version of the licensed code is required to be a "library" (which is defined in section 0 in the intuitive way), then how can you create an application, and license it under the LGPL in such a way that anyone can modify and redistribute it in application form without violating the license?

    In other words, section 2a says that a modified version of the covered work must be a software library--in the technical sense that we all know and love. This works great for software libraries licensed with the LGPL, but it doesn't seem so hot for applications that want to do the same. In fact, it seems like a pretty big discrepancy (unless I'm really missing something ;) )

    I hope this helps. I'm very interested to see if anyone else has thought about the same thing.

    --
    Let's try not to let fact interfere with our speculation here, OK?
    1. Re:Maybe I need to be more clear... by Rozzin · · Score: 2

      If a modified version of the licensed code is required to be a "library" (which is defined in section 0 in the intuitive way), then how can you create an application, and license it under the LGPL in such a way that anyone can modify and redistribute it in application form without violating the license?

      As DeadSea wrote in response to another article, it's generally better to implement libraries as libraries than nonmodular applications. Implement the functionality of your application as a library, or a set of libraries, and a stubby little main routine, and then you won't really need to care about whether the LGPL can be applied to things that aren't libraries.

      --
      -rozzin.
  2. Modules/Plugins by Tim · · Score: 2

    RMS's stance is that dynamic linking produces a derived work. Thus, you can only dynamically link GPLed code with GPLed code or LGPLed code.

    If you implement plugins with dynamic linking, you can't have closed-source plugins unless you use the LGPL (or something LGPL-like).

    So sometimes, it does make sense to want to LGPL an application. But I don't see how it can be done. And using some non-GPL license will pretty much make my code incompatible with the GPL, which is also bad.

    --
    Let's try not to let fact interfere with our speculation here, OK?
  3. What would it mean? by Alan+Shutko · · Score: 2

    The LGPL differs from the GPL in that programs can link to the library without themselves being covered under the GPL.

    It doesn't make any sense to LGPL an app. If it's an app, you won't be linking to it, and it's the same as if it were licensed under the GPL. You still need to distribute source, you still can call the app (as a whole) from non-free programs, etc.

    Am I missing something here?

  4. You can always make your own license by Chris+Pimlott · · Score: 2

    I don't know about applying the verbatim LGPL, but if you can't, there's nothing stopping you from modifying it to your own license. Easiest thing would be to use it all the same except the part the conflicts (if it is determined to conflict).

  5. Re:Well, it's been done before by roca · · Score: 2

    IBM has also released their K42 OS kernel under the LGPL.

  6. YES you can, but you might want to think twice. by hgayosso · · Score: 2
    From:

    http://www.gnu.org/copyleft/lesser.html& lt;/a>

    This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.

    Why you shouldn't use the Library GPL for your next library

    http://www.gnu.org/philosophy/wh y-n ot-lgpl.html

    Useful resources: http://www.gnu.org/philosophy/li cen se-list.html

    --
    Support The GNU Project!! http://www.gnu.org
  7. The MPL by yerricde · · Score: 2

    Three words: Not GPL Compatible. I'd suggest MPL/GPL disjunction (like the Gecko engine, soon) or GPL with permission to link (like libstdc++, Guile, and the GNU Ada libraries).

    --
    Will I retire or break 10K?
  8. The MPL 1.1 IS GPL-compatible by Throw+Away+Account · · Score: 2

    That's why I suggested the MPL 1.1, not the MPL 1.0. See
    http://www.mozilla.org/MPL/MPL-1.1.html, section "13. MULTIPLE-LICENSED CODE".

    --
    There's no "we" in team, only "me"