Gnu weniger allgemeine öffentliche Lizenz
Veröffentlicht | 1991 |
---|---|
SPDX Kennung | LGPL-3.0-oder-Later LGPL-3.0-Nur LGPL-2.1-oder-Later LGPL-2.1 Nur LGPL-2.0-or-Later LGPL-2.0-Nur |
Debian FSG kompatibel | Ja[1] |
FSF genehmigt | Ja[2] |
Osi genehmigt | Ja[3] |
GPL kompatibel | Ja[2] |
Copyleft | Ja[2] (Bibliothek oder dynamische Verknüpfungsbasis) |
Verknüpfung von Code mit einer anderen Lizenz | Ja |
Webseite | www |
Das Gnu weniger allgemeine öffentliche Lizenz (LGPL) ist ein Frei-Software-Lizenz veröffentlicht von der Kostenlose Software -Stiftung (FSF). Mit der Lizenz ermöglicht es Entwicklern und Unternehmen, eine Softwarekomponente zu verwenden und zu integrieren, die unter dem LGPL in ihre eigene veröffentlicht wurde (sogar proprietär) Software, ohne nach den Bedingungen eines starken Anforderungen verlangt zu werden Copyleft Lizenz zur Veröffentlichung des Quellcodes ihrer eigenen Komponenten. Jeder Entwickler, der eine von LGPL bedeckte Komponente ändert, muss jedoch seine geänderte Version unter derselben LGPL-Lizenz verfügbar machen. Für proprietäre Software wird Code unter der LGPL normalerweise in Form von a verwendet gemeinsame Bibliothek, damit es eine klare Trennung zwischen den proprietären und LGPL -Komponenten gibt. Die LGPL wird hauptsächlich für verwendet Software -Bibliothekenobwohl es auch von einigen eigenständigen Anwendungen verwendet wird.
Die LGPL wurde als Kompromiss zwischen den Starken entwickelt Copyleft des GNU Allgemeine öffentliche Lizenz (GPL) und mehr zulässt Lizenzen wie die BSD -Lizenzen und die MIT -Lizenz. Das Wort "weniger" im Titel zeigt, dass die LGPL die vollständige Freiheit des Endbenutzers bei der Verwendung von Software nicht garantiert. Es garantiert nur die Änderungsfreiheit für Komponenten, die unter der LGPL lizenziert wurden, jedoch nicht für proprietäre Komponenten.
Geschichte
Die Lizenz wurde ursprünglich die genannt GNU Library Allgemeine öffentliche Lizenz und wurde erstmals 1991 veröffentlicht und übernahm die Version Nummer 2 für Parität mit GPL Version 2. Die LGPL wurde in der von 1999 veröffentlichten 2.1 -Punkte -Veröffentlichung in geringfügiger Weise überarbeitet Die Position des FSF, dass nicht alle Bibliotheken sie verwenden sollten. Version 3 der LGPL wurde 2007 als Liste der zusätzlichen Berechtigungen veröffentlicht, die auf die GPL -Version 3 angewendet wurden.
Zusätzlich zu dem Begriff "Arbeit basierend auf dem Programm" von GPL führte LGPL Version 2 zwei zusätzliche Klarstellungsbegriffe "Arbeiten basierend auf der Bibliothek" und einer "Arbeit, die die Bibliothek verwendet" einführte.[4] LGPL Version 3 hat diese Begriffe teilweise fallen gelassen.
Unterschiede zur GPL
Der Hauptunterschied zwischen der GPL und dem LGPL besteht darin, dass Letzteres die Arbeit mit (im Falle einer Bibliothek, "von" verwendet ") einem nicht (l) GPLEd-Programm, unabhängig davon, ob es unter einem lizenziert ist, verknüpft ist Lizenz der GPL -Familie oder anderen Lizenzen.[5] In LGPL 2.1 kann das nicht (l) GPLED-Programm dann unter allen Bedingungen verteilt werden, wenn es nicht a ist Ableitungsarbeit. Wenn es sich um eine abgeleitete Arbeit handelt, müssen die Begriffe des Programms eine "Änderung der Arbeit für die eigene Verwendung des Kunden ermöglichen und Reverse Engineering Zum Debuggen solcher Modifikationen: "Ob eine Arbeit, die ein LGPL -Programm verwendet Dynamisch Verbindungen zu einer Bibliothek durch a .Also, .dlloder ein ähnliches Medium wird allgemein als nicht abgeleitete Arbeit im Sinne des LGPL anerkannt. Es würde unter die Definition einer "Arbeit, die die Bibliothek verwendet" fallen. Absatz 5 der LGPL -Version 2.1 Staaten:
- Ein Programm, das kein Derivat eines Teils der Bibliothek enthält, sondern für die Zusammenarbeit mit der Bibliothek durch Zusammenstellung oder Verknüpfung mit ihr entwickelt wurde, wird als "Arbeit, das die Bibliothek verwendet" bezeichnet. Eine solche Arbeit ist isoliert kein Derivat der Bibliothek und fällt daher außerhalb des Rahmens dieser Lizenz.
Wenn es sich um eine "Arbeit, die die Bibliothek verwendet", muss es im Wesentlichen möglich sein, dass die Software mit einer neueren Version des von LGPL bedeckten Programms verknüpft wird. Die am häufigsten verwendete Methode dafür ist die Verwendung "eine geeignete gemeinsame Bibliothek Mechanismus zum Verknüpfen ". Alternativ a Statisch verknüpfte Bibliothek ist zulässig, wenn entweder Quellcode oder verknüpfbare Objektdateien bereitgestellt werden.[6]
Kompatibilität
Ein Merkmal der LGPL ist die Erlaubnis zum Sublizen[7] Unter der GPL jeder Software, die unter dem LGPL empfangen wird (siehe Abschnitt 3 der LGPL -Version 2.1 und Abschnitt 2 Option B der LGPL -Version 3). Diese Funktion ermöglicht eine direkte Wiederverwendung von LGPLED -Code in GPLED -Bibliotheken und -anwendungen.
Version 3 des LGPL ist nicht von der Version 2 der GPL kompatibel. Arbeiten mit letzterem, die die Berechtigung zur Verwendung einer späteren Version der GPL erteilt haben, sind jedoch kompatibel:[8] Eine Arbeit, die unter der GPLV2 "oder einer beliebigen späteren Version" veröffentlicht wurde, kann mit Code aus einer LGPL -Version 3 -Bibliothek kombiniert werden, wobei die kombinierten Arbeiten insgesamt unter die Bedingungen des GPLV3 fallen.[9]
LGPL für Bibliotheken
Der frühere Name "GNU Library General Public Lizenz" gab einigen den Eindruck, dass die von der FSF empfohlene Software -Bibliotheken die LGPL verwenden und dass Programme die GPL verwenden. Im Februar 1999 der GNU -Projektleiter Richard Stallman schrieb den Aufsatz Warum sollten Sie die kleinere GPL für Ihre nächste Bibliothek nicht verwenden Erklären, dass die LGPL nicht gewesen war veraltet, aber dieser sollte nicht Notwendig Verwenden Sie die LGPL für alle Bibliotheken:
- Welche Lizenz für eine bestimmte Bibliothek am besten geeignet ist, ist eine Frage der Strategie ... Die Verwendung der gewöhnlichen GPL für eine Bibliothek bietet kostenlose Softwareentwickler einen Vorteil gegenüber proprietären Entwicklern: eine Bibliothek, die sie verwenden können, während proprietäre Entwickler sie nicht nutzen können ... wenn Die Funktionen einer kostenlosen Bibliothek sind für proprietäre Software über andere alternative Bibliotheken leicht verfügbar ... Die Bibliothek kann keine kostenlose Software einen besonderen Vorteil bieten. Daher ist es besser, die kleinere GPL für diese Bibliothek zu verwenden.[5]
Stallman und die FSF befürworten manchmal noch weniger restriktiv als die LGPL aus Strategie. Ein herausragendes Beispiel war Stallmans Befürwortung der Verwendung von a BSD-Stil Lizenz durch die Vorbis Projekt zur Verwendung in seinen Bibliotheken im Jahr 2001.[10]
Programmiersprachenspezifikationen
Die Lizenz verwendet Terminologie, die hauptsächlich für Bewerbungen in der vorgesehen ist C Programmiersprache oder seine Familie. Franz Inc., die Entwickler von Allegro Common Lispveröffentlichte ihre eigene Präambel in der Lizenz, um die Terminologie in der zu klären Lispeln Kontext. Die LGPL mit dieser Präambel wird manchmal als LLGPL bezeichnet.[11]
Zusätzlich, Ada hat eine spezielle Funktion, Generika, die die Verwendung des Gnat modifizierte allgemeine öffentliche Lizenz (GMGPL): Es ermöglicht den Code, mit GMGPL-bedeckten Einheiten zu verlinken oder zu instanziieren, ohne dass der Code selbst von der GPL abgedeckt wird.
C ++ Vorlagen und Nur-Header-Bibliotheken haben das gleiche Problem wie ADA Generics. Version 3 der LGPL befasst sich mit solchen Fällen in Abschnitt 3.[12]
Klassenvererbung
Einige Sorge haben sich um die Eignung objektorientierter Klassen im LIZPL-Code des LGPL gestiegen vererbt durch Nicht (l) GPL-Code. Auf der offiziellen GNU -Website wird die Klärung angegeben:
- Die LGPL enthält keine speziellen Bestimmungen für die Vererbung, da keine benötigt wird. Die Vererbung erzeugt dieivatem Arbeiten auf die gleiche Weise wie die herkömmliche Verknüpfung, und das LGPL ermöglicht diese Art von Derivatarbeit auf die gleiche Weise wie sie gewöhnliche Funktionsaufrufe ermöglicht.[13]
Siehe auch
- Affero Allgemeine öffentliche Lizenz
- GNU kostenlose Dokumentationslizenz
- Gnat modifizierte allgemeine öffentliche Lizenz
- GPL -Verknüpfung der Ausnahme
- Software mithilfe der LGPL (Kategorie)
Verweise
- ^ Lizenzinformationen Debian
- ^ a b c "Verschiedene Lizenzen und Kommentare zu ihnen". Kostenlose Software -Stiftung. 26. Juni 2018. Abgerufen 2. August 2018.
- ^ Lizenzen und Standards Open Source Initiative
- ^ "Kapitel 10. Die kleinere GPL". Copyleft und die GNU Allgemeine öffentliche Lizenz: Ein umfassendes Tutorial und Leitfaden. 2018.
- ^ a b Stallman, Richard. Warum sollten Sie die kleinere GPL für Ihre nächste Bibliothek nicht verwenden. Kostenlose Software -Stiftung offizielle Website.
- ^ GNU weniger allgemeine öffentliche Lizenz, Abschnitt 4, pt. d) 0)
- ^ "sublizenzieren". Wiktionär. 7. Dezember 2020.
- ^ GNU Lesser General Public Lizenz (LGPL) Version 3. Kostenlose Software -Stiftung offizielle Website.
- ^ Häufig gestellte Fragen zu den GNU -Lizenzen - GNU -Projekt - Free Software Foundation. Kostenlose Software -Stiftung offizielle Website.
- ^ Stallman, Richard. Betreff: [Open-Source] [FWD: [ICECAST-DEV] xiph.org kündigt Vorbis Beta 4 und den xiph.org an
- ^ Präambel für die GNU weniger allgemeine öffentliche Lizenz
- ^ LGPLV3 für eine C ++ Pure -Vorlagenbibliothek?
- ^ Turner, David. Die LGPL und Java. GNU offizielle Website.