GNU Lesser General Public License
A GNU Lesser General Public License (rövid neve LGPL, magyarul: Kevésbé általános közreadási szerződés) egy általános célú nyílt forráskódú licenc, amelyet a Free Software Foundation (FSF) tervezett eredetileg a GNU projekt programkönyvtáraihoz. Az LGPL licenc lehetővé teszi (ellentétben az LGPL licenc alapjául szolgáló GPL licenccel), hogy a programkönyvtárat kereskedelmi programok használják fel.
Lényege
[szerkesztés]A licenc lényege – más szabad licencekhez hasonlóan –, hogy a mű szabadon terjeszthető (akár pénzért is) és szabadon módosítható, de a terjesztései és a módosítások kötelezően szintén az LGPL licenc alatt kell, hogy megjelenjenek, így biztosítva, hogy a szabad tartalmakból készült bármilyen származékos mű is szabad maradjon. Az LGPL kivételesen lehetővé teszi, hogy a mű vagy bármely módosítása az LGPL helyett GPL licenc alatt kerüljön kiadásra.
Az LGPL korábban használatos változata, az LGPL 2.1 1999-ben készült.[1] A most érvényes változat a 3. verzió, melynek szövegét 2007. június 29-én fogadtak el.[2]
A LGPL legnagyobb programbázisa jelenleg a GNU projekt programkönyvtárai (például a GNU C Library, GTK+ stb.), a nyílt forráskódú programkönyvtárak jelentős része, vagy olyan meghatározó szabad szoftverek, mint az OpenOffice.org vagy a Mozilla Firefox.
Különbségek a GPL-hez képest
[szerkesztés]A fő különbség a GPL és az LGPL között, hogy az utóbbi megengedi a munka összekapcsolását/linkelését (egy függvénytár/library esetén, 'használat') egy nem (L)GPL programmal, függetlenül attól, hogy az szabad szoftver vagy zárt forráskódú szoftver-e.[3]
A nem-(L)GPL program ekkor bármilyen feltételekkel terjeszthető, ha az nem továbbfejlesztett/leszármaztatott munka. Ha továbbfejlesztett/leszármaztatott munka, akkor a program licencének meg kell engednie a "változtatásokat a felhasználó saját igényeinek megfelelően és a visszafejtést ezen módosítások hibáinak keresése érdekében'. Az, hogy egy munka, ami egy LGPL programot használ, továbbfejlesztett/leszármaztatott munka-e vagy sem, egy jogi kérdés.
Egy önálló futtatható állományt, amely dinamikusan kapcsolódik egy függvénytárhoz, például .so, .dll vagy hasonló állományhoz, általában nem tekintenek továbbfejlesztett/leszármaztatott munkának (ahogy az LGPL-ben meghatározták). Pontos meghatározása az "a munka, amely a függvénytárat használja". A következő idézet az LGPL 2.1 változatának 5. bekezdéséből való:
- Angolul: A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.
- Magyarul: A programot, amely nem tartalmaz a függvénytárból továbbfejlesztett/leszármaztatott részeket, csak az azzal történő együttműködésre tervezték, legyen az egybefordítva (compiled) vagy összekapcsolva (linked) azzal, úgy határozzuk meg: "munka, amely a függvénytárat használja". Az ilyen munka önmagában nem tekinthető a függvénytárból továbbfejlesztett/leszármaztatott munkának, és így kikerül ezen licenc hatálya alól. Lásd még a gnu.hu fordítást.
Lényeges, hogy ha ez egy "munka, ami a függvénytárat használja", akkor lehetővé kell tenni a szoftver összekapcsolását/használatát (linkelését) az LGPL-es függvénytár újabb változataival is. A leggyakrabban használt módszer "egy megfelelő megosztott függvénytár használata a linkeléshez". Hasonló ehhez egy statikusan linkelhető függvénytár elérhetővé tétele forráskódként vagy beépíthető objektumként.
Az LGPL egyik fontos jellemzője, hogy az szoftver LGPL alá tartozó részei áthelyezhetők a GPL hatálya alá (3. szakasz a licencben). Ez lehetővé teszi az LGPL kód közvetlen újrafelhasználást GPL függvénytárakban és alkalmazásokban.
A kereskedelmi célú felhasználás korlátai
[szerkesztés]Összefoglalásképpen elmondható, hogy zárt forrású programok fejlesztői számára járható utat a dinamikusan (osztott módon, tipikusan .jar, .dll, .so, stb.) történő hozzáférés jelent bármely LGPL függvénytár/library tárgykódjának használata esetén. Statikus hozzáférés (egybefordítás/compiled) esetén ugyanis a függvénytár/library az alkalmazás részévé válik, így a teljes műre a GPL licenc szabályai vonatkoznak, melynek értelmében az alkalmazás forráskódja nem maradhat zárt.
Jegyzetek
[szerkesztés]- ↑ [1] Az LGPL licenc szövege
- ↑ [2] GPLv3.FSF.org. A GPLv3 honlapja a vitaanyagokkal.
- ↑ Stallman, Richard. Why you shouldn't use the Lesser GPL for your next library. Free Software Foundation official website.