GNU Lesser General Public License

A Wikipédiából, a szabad enciklopédiából

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. [1] Az LGPL licenc szövege
  2. [2] GPLv3.FSF.org. A GPLv3 honlapja a vitaanyagokkal.
  3. Stallman, Richard. Why you shouldn't use the Lesser GPL for your next library. Free Software Foundation official website.

Külső hivatkozások[szerkesztés]