Portál AbcLinuxu, 4. května 2025 05:40
Programové knihovny se často šíří pod licencí LGPL, není to však pravidlem. Někdy to bývá GPL, což nepovažuji za úplně nejlepší nápad - i když má každý samozřejmě právo zvolit si licenci dle svého uvážení. Každopádně považuji LGPL za jednoznačně nejlepší licenci pro knihovny, ať si kdo chce co chce říká...
Licence LGPL vznikla jako obdoba GPL určená pro knihovny. Na jednu stranu zachovává svobodu kódu knihovny na úrovni GPL, současně ale umožňuje dynamické linkování s programy pod jinými licencemi. Někdo to nazývá "menší svobodou" (proto se také změnil význam LGPL - z Library GPL na Lesser GPL, což má značit "slabší, menší GPL"). Vychází to z logiky, že takovou knihovnu mohou používat i nesvobodné programy, a proto tato knihovna netlačí na vznik GPL programů.
Lze to ale i obrátit - LGPL zajišťuje větší svobodu, protože kromě svobody á la GPL poskytuje také svobodu na výběr licence, pod níž se bude šířit program, který knihovnu používá. Tento program může být jak pod GPL, tak pod jinou licencí, podle volby autora. Samotná knihovna je stále chráněna proti tomu, aby někdo s jejím kódem naložil v rozporu s principy svobodných programů. Na tom nic nemění ani fakt, že ji lze použít i v nesvobodných programech.
Lidé z projektu GNU doporučují pro většinu knihoven používat GPL; LGPL pouze výjimečně (pro knihovny obecnějšího charakteru). Domnívám se ale, že použití GPL může být významnou brzdou při vytváření programů (zejména konkrétních řešení), u kterých z nějakých důvodů nelze použít GPL (např. kvůli použití součástí pod jinými licencemi, nebo kvůli požadavkům zákazníka). Výsledkem pak bývá, že se použije ryze proprietární řešení (často i včetně OS), případně horší varianta dostupná pod LGPL, a velmi dobrá knihovna zůstane nevyužita.
V souvislosti s tím je nepříjemné, že je např. Qt pod GPL, a nikoli pod LGPL. To obvykle vyúsťuje v používání GTK+, což je podle mého názoru hůře použitelná a pomalejší knihovna - má však licenční výhodu. Proto si myslím, že lepší volbou téměř pro všechny případy knihoven je právě použití LGPL, i když samozřejmě nezatracuji jiné licence (včetně GPL).
Tiskni
Sdílej:
Poraď mi tedy, jak můžu v integrovaném prostředí pod Windows, řekněme pod Visual C++ vyvíjet pod Qt a jak tedy budu prohánět zdrojáky preprocesoremÚplně normálně. Qt nástroje se totiž do Visual Studia integrují (objeví se tlačítka na liště, položky v menu atd.) a při kompilaci zdrojáku se prostě před kompilátorem zavolá preprocesor. Jedná se ovšem o komerční balík Qt pro Windows (verze 3 se pro Win ani v GPL neposkytovala, verze 4 sice ano, ale do VS se neintegruje).
Ohledne NETu - je to teda neco jineho, nez virtualni masina s relativne strojove nezavislym bytekodem a standardni sadou definovanych knihoven?No, asi tam je ještě vyžadován minimálně C#, ale nejsem si zcela jist. V případě Javy je jazyk (Java) neoddělitelnou součástí platoformy (Java). Jinak to ale je tak - virtuální mašina a standardní sada knihoven. Která ovšem (!!) neobsahuje (!!) grafické GUI, takže vlastně debatujete zcela off-topic. Nelze QT nahradit pomocí .NET. Microsoft a Mono dodávají ve svých frameworcích ještě mnoho nestandardních knihoven, jako je například grafické gui (windows forms, GTK binding) nebo ASP.NET (to je zase pro změnu jiná sada knihoven).
Ach jo. Prosim nemichej pate pres devate. a, NELZE srovnavat BitKeeper a Qt. BitKeeper NIKDY nebyl open source, natoz GPL. Od pouzivani BK se odstoupilo pote, co autor BK hrozne rval, ze se nekdo (autor Samby) snazil napsat GPL BK klientBK BOL open source, akurát nikdy nebol free softvér. BK prestal byť open-source kvôli dvom konkrétnym udalostiam. Podľa pôvodnej zmluvy mal BK logovať metadata na verejný server s tým, že budú prístupné každému. A tí, čo vyvíjajú closed-source produkty, resp. im to vadí nech si ho kúpia. Lenže kým to bol open source, tak to nebol problém zakomentovať (a robilo to tak príliš veľa ľudí). Druhým problém bolo kopírovanie niektorých fn do podobných free nástrojov. Autori sa vyjadrili, že nie sú proti free konkurencii, ale nech nevykrádajú ich kód. A pár mesiacov na to sa stal z BK closed-source.
To obvykle vyúsťuje v používání GTK+, což je podle mého názoru hůře použitelná a pomalejší knihovna - má však licenční výhodu.Nicméně GTK+ je IMHO přijímána lidmi upřednostňujicími Qt/KDE kladněji, než je tomu naopak, takže je dobře, že to tak je.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.