GNU Lesser General Public License

Den stabila versionen checkades ut den 9 maj 2022 . Det finns overifierade ändringar i mallar eller .
GNU Lesser General Public License

Logotyp
Författare Free Software Foundation
Version 3 (2007 ) ( 2007 )
Publicerad 1991  ( 1991 )
Kompatibel med DFSG Ja
OSI godkänd Ja
GPL -kompatibel Ja
copyleft Ja
Tillåter länkning med kod under en annan licens Ja

GNU Lesser General Public License ( LGPL ) är en fri mjukvarulicens författad av Free Software Foundation (FSF). Licensen tillåter utvecklare och företag att använda och implementera programvara licensierad enligt LGPL:s villkor i sin egen (även proprietära ) programvara, utan det obligatoriska kravet att tillhandahålla källkoden för sina egna komponenter under en copyleft -licens. En förutsättning för licensen är endast möjligheten att modifiera programvara som licensieras under LGPL av slutanvändare genom att förse dem med källkoden. I proprietär programvara används LGPL-licensierad kod vanligtvis i form av ett delat bibliotek , så det finns en tydlig åtskillnad mellan proprietära komponenter och LGPL-komponenter. LGPL används huvudsakligen av programvarubibliotek , även om det också används av vissa fristående applikationer. Licensen hette tidigare GNU Library General Public License och publicerades först 1991, version nummer 2 togs för att likna GPL version 2. LGPL genomgick mindre ändringar i version 2.1, som släpptes 1999, då den bytte namn till GNU Lesser General Public License för att återspegla FSF:s ståndpunkt att licensen inte var tillämplig på alla bibliotek. Version 3 av LGPL släpptes 2007 som en förlängning av GPL version 3-listan över ytterligare behörigheter.

LGPL är designad som en kompromiss mellan den strikta copyleft GNU General Public License (GPL) och mer tillåtande licenser som BSD-licenserna och MIT-licensen . Ordet "Lesser" i titeln indikerar att LGPL inte garanterar slutanvändaren fullständig frihet att använda programvaran på vilket sätt de vill; det garanterar friheten att ändra de av dess komponenter som är licensierade under LGPL, men inte proprietära komponenter.

Historik

Licensen hette tidigare GNU Library General Public License och publicerades först 1991, version nummer 2 togs för att likna GPL version 2. LGPL genomgick mindre ändringar i version 2.1, som släpptes 1999, då den bytte namn till GNU Lesser General Public License för att återspegla FSF:s ståndpunkt att licensen inte var tillämplig på alla bibliotek. Version 3 av LGPL släpptes 2007 som en förlängning av GPL version 3-listan över ytterligare behörigheter.

Skillnader från GPL

Den största skillnaden mellan GPL och LGPL är att den senare tillåter att verket som licensierats under det länkas (i fallet med ett bibliotek, "används") med icke-(L)GPL-programvara, oavsett om den programvaran är fri eller proprietär . [1] Icke-(L)GPL-programvara får sedan distribueras under vilka villkor som helst, så länge det inte är ett härlett verk av ovannämnda programvara. Om inte, måste programvaran tillåta "modifiering av slutanvändaren i syfte att använda programvaran, samt omvänd konstruktion för att felsöka de ändringar som gjorts." Licensen fastställer dock detta juridiska krav oavsett om programvaran som licensieras under LGPL är ett härlett verk eller inte. En fristående körbar fil som är dynamiskt länkad till ett bibliotek med en .so , .dll eller liknande metod är acceptabel och är inte ett härledd arbete enligt definitionen i LGPL. Det kännetecknas av definitionen av "ett verk som använder ett bibliotek". Punkt 5 i LGPL version 2.1 säger:

Ett program som inte innehåller någon derivata av någon del av biblioteket, men är designat för att fungera med biblioteket genom att kompileras eller länkas till det, kallas ett "verk som använder biblioteket". Ett sådant verk, isolerat, är inte ett härlett verk från biblioteket och faller därför utanför omfattningen av denna licens.

I huvudsak, om det är "ett verk som använder ett bibliotek", bör det vara möjligt att länka programvaran till en ny version av produkten licensierad under LGPL. Den vanligaste metoden för att göra detta är att använda "en lämplig delad biblioteksmekanism för länkning". Alternativt är statisk länkning tillåten om källkod eller objektfiler tillhandahålls för länkning. [2]

Kompatibilitet

En av rättigheterna som beviljas av LGPL är rätten att återlicensiera under GPL all mjukvara som erhållits under villkoren i LGPL (se avsnitt 3 i LGPL version 2.1 och avsnitt 2 alternativ b i LGPL version 3). Denna rättighet tillåter direkt användning av LGPL-kod i bibliotek och applikationer licensierade under GPL.

Version 3 av LGPL är inte automatiskt kompatibel med version 2 av GPL. Verk som använder den senare, med tillåtelse att använda en senare version av GPL, är dock kompatibla: [3] verk som licensierats under GPLv2 "och senare" kan kombineras med kod licensierat under LGPL version 3, det resulterande verket är föremål för till villkoren för GPLv3-licensen. [fyra]

LGPL för bibliotek

Det tidiga namnet "GNU Library General Public License" gav intrycket att de FSF-rekommenderade biblioteken använde LGPL, och programvaran använde GPL. I februari 1999 skrev GNU-projektledaren Richard Stallman en uppsats Why You Shouldn't Use the Lesser GPL in Your Next Library , och förklarade att LGPL inte har förklarats ostödd , men att det inte behöver använda LGPL för alla bibliotek :

Vilken licens som är bäst för ett givet bibliotek är en fråga om strategi... Att använda den vanliga GPL för ett bibliotek ger fri mjukvaruutvecklare en fördel framför proprietära utvecklare: ett bibliotek som de kan använda, medan proprietära utvecklare inte kan använda det... När ett gratis biblioteks funktioner är lätt tillgängliga för proprietär programvara genom andra alternativa bibliotek... biblioteket kan inte ge fri programvara någon speciell fördel, så det är bättre att använda Lesser GPL för det biblioteket. [ett]

Stallman och FSF, i strategiskt tänkande, har ibland förespråkat användningen av ännu mindre restriktiva licenser än LGPL. Ett utmärkt exempel är Stallmans stöd för Vorbis- projektets användning av BSD-licenser i deras bibliotek. [5]

Programmeringsspråksspecifikationer

Licensen använder terminologi som är allmänt tillämplig på applikationer skrivna i C och dess språkfamilj. Franz Inc. publicerade sin egen introduktion till licensen för att förtydliga terminologin i Lisp -sammanhang . LGPL med denna ingress kallas ibland för LLGPL. [6]

Utöver detta har Ada en speciell funktion som kallas generics som erbjuder användningen av GNAT Modified General Public License : den tillåter kod att länka till c eller instansiera komponenter som omfattas av GMGPL utan att koden täcks av GPL.

Klassarv

Det har funnits en viss oro över möjligheten att ärva objektorienterade programmeringsklasser från LGPL-programvara i icke-(L)GPL-programvara. En förklaring ges på den officiella GNU-webbplatsen:

LGPL innehåller inga särskilda bestämmelser för arv, eftersom inga behövs. Arv skapar härledda verk på samma sätt som traditionell länkning, och LGPL tillåter denna typ av härledda arbeten på samma sätt som det tillåter vanliga funktionsanrop. [7]

Se även

Anteckningar

  1. 1 2 Stallman, Richard. Varför du inte ska använda Lesser GPL för ditt nästa bibliotek Arkiverad 3 oktober 2009 på Wayback Machine . Free Software Foundations officiella webbplats.
  2. Gnu Lesser General Public License, avsnitt 4 Arkiverad 4 april 2018 på Wayback Machine , pt. d) 0)
  3. GNU Lesser General Public License (LGPL) version 3 Arkiverad 22 maj 2018 på Wayback Machine . Free Software Foundations officiella webbplats.
  4. Vanliga frågor om GNU-licenserna - GNU Project - Free Software Foundation Arkiverad 13 mars 2018 på Wayback Machine . Free Software Foundations officiella webbplats.
  5. Stallman, Richard. [https://web.archive.org/web/20181111075259/https://lwn.net/2001/0301/a/rms-ov-license.php3 Arkiverad 11 november 2018 på Wayback Machine Re: [öppen- källa] [Fwd: [icecast-dev] Xiph.org tillkännager Vorbis Beta 4 och Xiph.org]
  6. Ingressen till Gnu Lesser General Public License . Hämtad 23 mars 2017. Arkiverad från originalet 26 oktober 2015.
  7. Turner, David. LGPL och Java arkiverade 5 februari 2017 på Wayback Machine . GNU officiella webbplats.

Länkar