Licență publică generală minoră GNU | |
---|---|
| |
Autor | Free Software Foundation |
Versiune | 3 (2007 ) |
Publicat | 1991 |
Compatibil cu DFSG | da |
Aprobat OSI | da |
Compatibil GPL | da |
copyleft | da |
Permite conectarea cu cod sub o altă licență | da |
Licența GNU Lesser General Public License ( LGPL ) este o licență de software gratuită creată de Free Software Foundation (FSF). Licența permite dezvoltatorilor și întreprinderilor să utilizeze și să implementeze software licențiat în conformitate cu termenii LGPL în propriul lor software (chiar și proprietar ), fără cerința obligatorie de a furniza codul sursă al propriilor componente sub o licență copyleft . O condiție prealabilă a licenței este doar capacitatea de a modifica software-ul licențiat conform LGPL de către utilizatorii finali, furnizându-le codul sursă. În software-ul proprietar, codul cu licență LGPL este utilizat de obicei sub forma unei biblioteci partajate , astfel încât există o separare clară între componentele proprietare și componentele LGPL. LGPL este utilizat în principal de bibliotecile de software , deși este folosit și de unele aplicații independente. Licența a fost numită anterior Licență publică generală a bibliotecii GNU și a fost publicată pentru prima dată în 1991, versiunea numărul 2 a fost luată pentru a semăna cu versiunea GPL 2. LGPL a suferit modificări minore în versiunea 2.1, lansată în 1999, când a fost redenumită GNU Lesser. Licență publică generală pentru a reflecta poziția FSF conform căreia licența nu era aplicabilă tuturor bibliotecilor. Versiunea 3 a LGPL a fost lansată în 2007 ca o extensie a listei GPL versiunea 3 de permisiuni suplimentare.
LGPL este conceput ca un compromis între licența publică generală GNU (GPL) strict copyleft și licențe mai permisive , cum ar fi licențele BSD și licența MIT . Cuvântul „Leser” din titlu indică faptul că LGPL nu garantează utilizatorului final libertatea deplină de a utiliza software-ul în orice mod dorește; garantează libertatea de a schimba componentele sale care sunt licențiate conform LGPL, dar nu componentele proprietare.
Licența a fost numită anterior Licență publică generală a bibliotecii GNU și a fost publicată pentru prima dată în 1991, versiunea numărul 2 a fost luată pentru a semăna cu versiunea GPL 2. LGPL a suferit modificări minore în versiunea 2.1, lansată în 1999, când a fost redenumită GNU Lesser. Licență publică generală pentru a reflecta poziția FSF conform căreia licența nu era aplicabilă tuturor bibliotecilor. Versiunea 3 a LGPL a fost lansată în 2007 ca o extensie a listei GPL versiunea 3 de permisiuni suplimentare.
Principala diferență dintre GPL și LGPL este că acesta din urmă permite ca lucrările licențiate în baza acesteia să fie conectate (în cazul unei biblioteci, „utilizate”) cu software non-(L)GPL, indiferent dacă acel software este liber sau proprietar . . [1] Software-ul non-(L)GPL poate fi apoi distribuit în orice condiții, atâta timp cât nu este o lucrare derivată a software-ului menționat mai sus. Dacă nu, software-ul trebuie să permită „modificarea de către utilizatorul final în scopul utilizării software-ului, precum și inginerie inversă pentru a depana modificările efectuate”. Cu toate acestea, licența stabilește această cerință legală dacă software-ul licențiat conform LGPL este sau nu o lucrare derivată. Un executabil autonom care este legat dinamic la o bibliotecă printr-o metodă .so , .dll sau similară este acceptabil și nu este o lucrare derivată așa cum este definită în LGPL. Se caracterizează prin definiția „o lucrare care folosește o bibliotecă”. Punctul 5 din versiunea 2.1 a LGPL prevede:
Un program care nu conține niciun derivat din nicio porțiune a Bibliotecii, dar este proiectat să funcționeze cu Bibliotecă prin compilare sau legătură cu aceasta, se numește „lucrare care folosește Biblioteca”. O astfel de lucrare, în mod izolat, nu este o lucrare derivată a Bibliotecii și, prin urmare, nu intră în domeniul de aplicare al acestei Licențe.În esență, dacă este „o lucrare care utilizează o bibliotecă”, atunci ar trebui să fie posibilă conectarea software-ului la o nouă versiune a produsului licențiat conform LGPL. Metoda cea mai des folosită pentru a face acest lucru este utilizarea „un mecanism adecvat de bibliotecă partajată pentru legare”. Alternativ, legarea statică este permisă dacă codul sursă sau fișierele obiect sunt furnizate pentru legare. [2]
Unul dintre drepturile acordate de LGPL este dreptul de a licenția sub GPL orice bucată de software obținută în condițiile LGPL (a se vedea secțiunea 3 din versiunea LGPL 2.1 și secțiunea 2 opțiunea b din versiunea 3 LGPL). Acest drept permite utilizarea directă a codului LGPL în biblioteci și aplicații licențiate conform GPL.
Versiunea 3 a LGPL nu este compatibilă automat cu versiunea 2 a GPL. Cu toate acestea, lucrările care utilizează cea din urmă, cu permisiunea de a utiliza o versiune ulterioară a GPL, sunt compatibile: [3] lucrările licențiate conform GPLv2 „și mai târziu” pot fi combinate cu codul licențiat conform LGPL versiunea 3, lucrarea rezultată este supusă la termenii licenței GPLv3 . [patru]
Numele timpuriu „GNU Library General Public License” a dat impresia că bibliotecile recomandate de FSF foloseau LGPL, iar software-ul folosea GPL. În februarie 1999, liderul proiectului GNU Richard Stallman a scris un eseu De ce nu ar trebui să folosești GPL mai mic în biblioteca următoare , explicând că LGPL nu a fost declarat neacceptat , dar că nu trebuie să folosească LGPL pentru toate bibliotecile. :
Ce licență este cea mai bună pentru o anumită bibliotecă este o chestiune de strategie... Utilizarea GPL obișnuită pentru o bibliotecă oferă dezvoltatorilor de software liber un avantaj față de dezvoltatorii proprietari: o bibliotecă pe care o pot folosi, în timp ce dezvoltatorii proprietari nu o pot folosi... Când caracteristicile unei biblioteci gratuite sunt ușor disponibile pentru software-ul proprietar prin alte biblioteci alternative... biblioteca nu poate oferi software-ului gratuit niciun avantaj special, așa că este mai bine să folosiți GPL-ul mai mic pentru acea bibliotecă. [unu]Stallman și FSF, gândind strategic, au susținut uneori utilizarea unor licențe și mai puțin restrictive decât LGPL. Un prim exemplu este suportul lui Stallman pentru utilizarea licențelor BSD de către proiectul Vorbis în bibliotecile lor. [5]
Licența folosește terminologie aplicabilă în general aplicațiilor scrise în C și familiei sale de limbi. Franz Inc. a publicat propria sa introducere la licență pentru a clarifica terminologia în contextul Lisp . LGPL cu acest preambul este uneori denumit LLGPL. [6]
În plus, Ada are o caracteristică specială numită generice care oferă utilizarea licenței publice generale modificate GNAT : permite codului să se conecteze la c sau să instanțieze componente acoperite de GMGPL fără ca codul să fie acoperit de GPL.
A existat o anumită îngrijorare cu privire la capacitatea de a moșteni clase de programare orientată pe obiecte din software-ul LGPL în software-ul non-(L)GPL. O explicație este dată pe site-ul oficial GNU:
LGPL nu conține prevederi speciale pentru moștenire, deoarece nu sunt necesare. Moștenirea creează lucrări derivate în același mod ca legarea tradițională, iar LGPL permite acest tip de lucrări derivate în același mod în care permite apelurile de funcții obișnuite. [7]Proiectul GNU | ||
---|---|---|
Poveste | ||
Licențe |
| |
software _ |
| |
Personalități |
| |
Alte subiecte |
|
Software gratuit și open source | |
---|---|
Lucrul principal |
|
Comunitate |
|
Organizații | |
Licențe | |
Probleme | |
Alte |
|
|