GNU Lesser General Public License

GNU Lesser General Public License
Logo
AutorFree Software Foundation
Wersja3 (29 czerwca 2007; ponad 14 lat temu)[1]
Data wydaniaczerwiec 1991[2]
Kompatybilność
Uznana przez FSFtak
Uznana przez OSItak
Kompatybilna z GPLtak
Copylefttak
Strona internetowa

GNU Lesser General Public License (LGPL) – licencja wolnego oprogramowania zaaprobowana przez FSF, zaprojektowana jako kompromis między GNU GPL a liberalnymi licencjami jak licencja BSD lub licencja X11 (MIT). Napisana w roku 1991 (a następnie poprawiona w roku 1999) przez Richarda Stallmana z pomocą Ebena Moglena.

Założenia

Licencja LGPL nakłada ograniczenia określane jako copyleft na poszczególne pliki źródłowe, ale nie na cały program, pod warunkiem używania odpowiedniego mechanizmu bibliotek współdzielonych (ang. shared library) oraz przestrzegania pewnych dodatkowych ograniczeń. Licencja jest głównie przeznaczona do bibliotek, chociaż używają jej też aplikacje składające się z wielu połączonych ze sobą bibliotek, np. pochodzące z pakietu OpenOffice.org lub KOffice.

LGPL różni się od GPL głównie tym, że pozwala na łączenie z programami nieobjętymi licencjami GPL czy LGPL, niezależnie czy będą one wolnym czy własnościowym oprogramowaniem.

Jedną z cech LGPL jest możliwość przekształcenia każdego kawałka kodu z LGPL na GPL (sekcja 3 licencji). Dzięki temu można stworzyć wersję kodu, której nikt nie będzie mógł rozprowadzać jako oprogramowanie własnościowe.

Nazwa licencji została zmieniona, ponieważ pierwotna nazwa (GNU Library General Public License) sugerowała, że FSF zaleca jej stosowanie dla wszystkich wolnych bibliotek. W 1999 roku, jeszcze przed zmianą nazwy, Richard Stallman napisał esej, w którym odradzał domyślne stosowanie GNU LGPL dla wszystkich tworzonych bibliotek i wyjaśnił, że z punktu widzenia FSF wybór licencji dla konkretnej biblioteki jest kwestią strategii.

Publikacja owego eseju („Dlaczego nie powinniście zastosować Library GPL dla swej kolejnej biblioteki”) bywała błędnie odczytywana jako sugestia, że LGPL jest przestarzała, i zalecenie, by nie stosować jej dla żadnych nowych bibliotek. Tymczasem w tekście tym czytamy:

Stosowanie zwykłej GPL nie dla każdej biblioteki jest szczególnie korzystne. Istnieją przyczyny, dla których w pewnych przypadkach lepiej jest użyć Library GPL.

Dwuznaczność zapisu

Licencja LGPL zawiera pewne kontrowersyjne sformułowania, tzn. frazę „derived works” w odniesieniu do dzieł pochodnych. Zanim popularne stało się programowanie obiektowe, owa fraza nie sprawiała nikomu problemu. Obecnie, fraza ta jest rozumiana przez niektórych inaczej. Zakładając, że aplikacja napisana obiektowo zawiera klasy dziedziczące (ang. derived) po klasach z biblioteki na licencji LGPL, niektórzy traktują ową aplikację jako dzieło pochodne (derived work) i mogą zażądać udostępnienia kodu aplikacji na licencji LGPL. Właśnie owa możliwość innej interpretacji słów „derived work” sprawiła, że m.in. biblioteki klas projektu Mono są udostępniane na licencji X11/MIT, która nie jest licencją wirusową (ang. viral license)[3]. Na oficjalnej stronie GNU widnieje sprostowanie:

The LGPL contains no special provisions for inheritance, because none are needed. Inheritance creates derivative works in the same way as traditional linking, and the LGPL permits this type of derivative work in the same way as it permits ordinary function calls.[4]

jednakże dopóki nie zostało ono włączone do prawnego tekstu licencji, nie miało ono mocy prawnej i nie mogło zapobiec drugiej z możliwych interpretacji zapisu „derived works”. 29 czerwca 2007 została opublikowana trzecia wersja licencji LGPL, która wyjaśnia w swej treści jak należy rozumieć obiektowe dziedziczenie w kontekście licencji[5].

Zobacz też

Przypisy

  1. Free Software Foundation: GNU Lesser General Public License (ang.). GNU, 2007-06-29. [dostęp 2018-01-06]. Cytat: GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007
  2. Free Software Foundation: GNU Library General Public License, version 2.0 (ang.). GNU, czerwiec 1991. [dostęp 2018-01-06]. Cytat: GNU LIBRARY GENERAL PUBLIC LICENSE Version 2, June 1991
  3. Redirecting…, mono-project.com [dostęp 2017-11-23] (ang.).
  4. Turner, David. The LGPL and Java. GNU official website.
  5. GNU Lesser General Public License Version 3

Linki zewnętrzne

Media użyte na tej stronie

Heckert GNU white.svg
(c) Aurelio A. Heckert, CC BY-SA 2.0
A bold GNU head.
LGPLv3 Logo.svg
LGPLv3 logo. This is the official license logo of the GNU Lesser General Public License version 3.
Copyright.svg
The copyright symbol drawn in SVG. Image version of the symbol ©.