LGPL
25.; LGPL і BSD License
Приклад:
Тоді: Це спрощення.;<pre> 2.; Характеристика Чи має змогу користувач системи реально замінити або модифікувати LGPL-бібліотеку?; |- | Версії мають значення | LGPL-2.1-only, LGPL-2.1-or-later, LGPL-3.0-only — це різні сценарії.; !; | LGPL має copyleft для самої бібліотеки.;
Application
Приклад:
Саме з цієї причини LGPL часто використовують там, де автори хочуть:
як ілюстрація, якщо код під `LGPL-2.1-or-later`, у деяких випадках можна перейти на LGPL 3.0 для сумісності з іншим кодом.; |}
LGPL каже:
LGPL надає можливість використовувати LGPL-бібліотеки в proprietary software.; or any later version
* ви хочете максимально просту ліцензію — тоді MIT/BSD;
* ви хочете strong copyleft для всього продукту — тоді GPL;
* ви хочете network copyleft — тоді AGPL;
* ви не хочете, щоб proprietary software використовував ваш код;
* ви не хочете пояснювати linking/compliance;
* ваша аудиторія боїться LGPL через юридичну складність;
* ви пишете маленьку утиліту, а не бібліотеку.; Пояснення
== LGPL і Apache License 2.; 26.0 ==
<pre>
[[Apache License 2.0]]
<pre>
Closed-source application
Для LGPL compliance варто перевірити:
== 39.; LGPL і mobile apps ==
== 3.; LGPL простими словами ==
== 34.; Приклад зміни LGPL-бібліотеки ==
Бібліотека залишається вільною.; :contentReference [oaicite:1]{index=1}
LGPL 2.1 має механізм, який надає можливість переоформити LGPL-код під GPL для використання в GPL-програмах; LGPL 3.0 додатково побудована поверх GPL 3.0 із додатковими дозволами.; Критерій
Ця стаття пояснює LGPL простими словами, але не є собою юридичною консультацією.;<syntaxhighlight lang="text">
А якщо написано `LGPL-2.1-only`, такої гнучкості немає.; MPL
Static linking можливий, але часто створює більше обов'язків, бо користувач системи має мати реальну можливість замінити або модифікувати LGPL-частину.; Це комфортно для LGPL, бо користувач системи теоретично має змогу замінити `libexample.so` на іншу сумісну версію.;== 12.; Цікавий факт: LGPL не забороняє static linking, але робить його відповідальнішим ==
{| class="wikitable"
{| class="wikitable"
<pre>
то license/EULA не повинна забороняти йому розібратися,
|
'''Людське пояснення:''' LGPL каже: “Можеш будувати свій застосунок навколо цієї бібліотеки, навіть закритий.; Дія
!; Чи має змогу користувач системи замінити або relink бібліотеку?; :contentReference [oaicite:6]{index=6} |- | LGPL-2.1-only | Можна використовувати тільки LGPL 2.1.; :contentReference [oaicite:3]{index=3}
Питання:
5.; Критерій
35.; LGPL у package metadata
!; Чому виникає
photo_editor — proprietary application LGPL-3.0-only photo_editor dynamically links libimage.so
LGPL — це ліцензійний пакет для бібліотек, яка намагається не бути занадто суворою і не бути занадто слабкою.; !; !;my_app = application code + LGPL library code Інший сценарій:
для всіх користувачів”.;[[MIT License]]
{| class="wikitable"
LGPL-2.1-or-later
|-
| Добра для бібліотек
| Саме для цього LGPL найчастіше й використовують.; Застосунок має змогу бути закритим.; |-
| Weak copyleft
| Захищає бібліотеку, але не змушує весь застосунок бути open source.; Комбінація
У mobile apps LGPL має змогу бути складнішою, ніж здається.; |
!; MIT
{| class="wikitable"
'''GNU Lesser General Public License''' або '''LGPL''' — це ліцензійний пакет на вільне програмне забезпечення, опублікована Free Software Foundation.; |}
license = "LGPL-2.1-or-later"
== 18.; LGPL і GPL ==
!; |}
[[AGPL]]
Це зробило LGPL популярною для бібліотек, які мають бути корисними максимально широкій екосистемі.; Пояснення
Dynamic linking можна уявити так:
<pre>
<div style="border-left: 6px solid #2e7d32; background: #e8f5e9; padding: 12px 16px; margin: 16px 0;">
source code libimage.so доступний
|-
| “LGPL = GPL”
| Обидві GNU copyleft-ліцензії.; {| class="wikitable"
[[LGPL]]
</div>
У GNU-ліцензіях дуже важлива різниця між:
Це одна з причин, чому LGPL така важлива: вона надає можливість free software-бібліотекам бути частиною дуже широкого software-світу.; Як правильно думати
* ви пишете бібліотеку;
* хочете, щоб сама бібліотека залишалась free software;
* хочете дозволити використання в proprietary software;
* не хочете strong copyleft для всього застосунку;
* хочете, щоб зміни бібліотеки поверталися спільноті;
* ваша бібліотека має бути широко використовуваною;
* MIT/BSD здаються занадто permissive;
* GPL здається занадто суворою для бібліотеки.; |}
GPL каже приблизно:
</div>
Якщо static linking блокує таку можливість, потрібно надати додаткові матеріали для relinking.; }
|-
| Використовувати бібліотеку
| Так
| У free software або proprietary software.; Подія
з цієї причини SPDX-ідентифікатор — це не формальність, а важлива юридична деталь.;[[GPL]]
{| class="wikitable"
10.; |-
| Proprietary-friendly
| надає можливість використання в закритих програмах.; |-
| Заборонити reverse engineering для debugging змін бібліотеки
| Ні
| LGPL не надає можливість блокувати користувача в цьому контексті.; LGPL
з цієї причини для mobile apps LGPL compliance треба продумувати уважно.;GPLv3
Бібліотека — це код, який не є собою самостійною програмою, а застосовується іншими програмами.;== 10.; Dynamic linking простими словами ==
22.; Цікавий факт: одна фраза “or later” має змогу сильно змінити сумісність
LGPL 3.0 додатково краще узгоджується з сучасними питаннями GPLv3-епохи, включно з patent і anti-tivoization контекстом, але має змогу бути складнішою для деяких корпоративних сценаріїв.; як ілюстрація, є собою бібліотека, яку автори хочуть поширити як free software.; :contentReference [oaicite:4]{index=4}
!; Пізніше назву змінили на '''Lesser General Public License'''.; Бібліотека і її зміни мають залишатися вільними.; +--> dynamically links LGPL library
== 30.; переважні аспекти LGPL ==
Бібліотека лежить окремо.; * захистити свободу бібліотеки;
* дозволити комерційне використання;
* не відлякати proprietary ecosystem;
* залишити бібліотеку корисною для всіх.; |}
{| class="wikitable"
+--> LGPL library
* зберегти текст LGPL;
* зберегти copyright notices;
* повідомити, що застосовується LGPL-компонент;
* надати source code самої LGPL-бібліотеки або спосіб його отримати;
* надати source code модифікацій LGPL-бібліотеки;
* не забороняти користувачу змінювати або замінювати LGPL-бібліотеку;
* при static linking — надати спосіб relinking;
* не накладати додаткові обмеження, які суперечать LGPL.; +--> other dependencies
== 41.; Юридичне застереження ==
LGPL має змогу бути не найкращим варіантом, якщо:
|-
| LGPL 3.0 + Apache 2.0
| Зазвичай так
| Через GPLv3-сумісність Apache 2.0 і структуру LGPLv3.; {
Це дозволено, якщо виконуються умови LGPL.; | Він можливий, але з додатковими вимогами.; {| class="wikitable"
</pre>
* сама бібліотека залишається під LGPL;
* зміни бібліотеки зазвичай мають залишатися під LGPL;
* застосунок, який використовує бібліотеку, має змогу мати іншу ліцензію;
* proprietary application має змогу використовувати LGPL-бібліотеку;
* користувачу треба залишити можливість заміни або модифікації LGPL-бібліотеки.; |-
| 2007
| Виходить LGPL 3.0 разом із GPL 3.0-епохою.; SPDX-License-Identifier: LGPL-2.1-or-later
[[GNU Lesser General Public License]]
Головні обмеження:
* static linking частіше трапляється;
* app stores можуть мати свої правила;
* користувачу складніше замінити бібліотеку;
* binary distribution жорсткіше контрольована;
* relinking має змогу бути нетривіальним;
* DRM або signing можуть заважати модифікаціям.; Яка саме реліз LGPL?; !; '''Чому це цікаво:''' LGPL займає середину між суворою GPL і дуже вільними MIT/BSD/Apache-ліцензіями.;<pre>
6.; !; * чи доступний source code бібліотеки?; |-
| GPL-compatible
| LGPL-код можна використовувати в GPL-проєктах.; !; Чи поширюється binary?; Окремо варто відзначити розроблена переважно; додатково реалізовано але програму, яка лише використовує цю бібліотеку, не обов'язково відкривати під GPL/LGPL виступає ключовою рисою бібліотек: саму LGPL-бібліотеку і її зміни треба залишати відкритими під LGPL забезпечується через '''Головна ідея:''' LGPL.;== 21.; “Only” і “or later” ==
LGPL виникла як компроміс між повним copyleft GPL і permissive-ліцензіями.; LGPL-2.1-or-later
під умовами LGPL.;== 33.; Приклад використання LGPL-бібліотеки ==
<pre>
Приклади SPDX:
Причини:
LGPL найчастіше використовують для бібліотек, framework-компонентів і reusable software, які мають бути вільними, але паралельно з цим можуть використовуватися в ширшій екосистемі — включно з закритими або комерційними програмами.; |-
| 1999
| Виходить LGPL 2.1.; Пояснення
LGPL найчастіше використовують саме для бібліотек.;<pre>
</pre>
Але якщо вона буде під GPL, багато proprietary-програм не зможуть її використовувати без відкриття всього свого коду.; |-
| LGPL-2.1-or-later
| Можна використовувати LGPL 2.1 або будь-яку пізнішу версію LGPL.;[[Free software]]
SPDX-License-Identifier: LGPL-3.0-only
== 9. Linking ==
з цієї причини при static linking часто потрібно надавати object files або інший спосіб relinking, щоб користувач системи міг замінити LGPL-бібліотеку.;<pre>
|-
| Складніша за MIT/BSD
| Linking, relinking і compliance можуть бути непростими.; * чи доступні object files для relinking?; libexample.so
{| class="wikitable"
== 16.; LGPL і proprietary software ==
== 19. LGPL 2.1 ==
!; це free software / open source ліцензійний пакет зі “слабким copyleft”.; |-
| Повна назва
| GNU Lesser General Public License
|-
| Скорочення
| LGPL
|-
| Автор / організація
| Free Software Foundation
|-
| Тип
| Free software license / open source license
|-
| Copyleft
| Так, але слабкий copyleft
|-
| Основне призначення
| Бібліотеки й reusable components
|-
| Комерційне використання
| Дозволено
|-
| Використання в закритих програмах
| Дозволено за умовами LGPL
|-
| Зміни самої LGPL-бібліотеки
| Зазвичай мають поширюватися під LGPL
|-
| Dynamic linking
| Зазвичай простіший сценарій для proprietary applications
|-
| Static linking
| Можливий, але має більше compliance-вимог
|-
| Основні версії
| LGPL 2.1, LGPL 3.0
|-
| SPDX identifiers
| LGPL-2.1-only, LGPL-2.1-or-later, LGPL-3.0-only, LGPL-3.0-or-later
|}
<pre>
</pre>
</div>
Static linking:
12.; !; І користувач системи не повинен бути заблокований
є собою два основні типи:
== 4.; Чому LGPL називається Lesser ==
{| class="wikitable"
9.; Це відрізняє LGPL/GPL від AGPL, яка спеціально має network copyleft-логіку.; |-
| Не завжди проста сумісність
| Особливо зі старими ліцензіями або Apache 2.0 у випадку LGPL 2.1-only.; !; only чи or-later?; Apache License 2.0
|
Але бібліотека має залишатися вільною
{| class="wikitable"
== 11.; Static linking простими словами ==
LGPL, як і GPL, зазвичай активується при distribution/conveying software.; Помилка
|
</pre>
|
або:
Закрита програма має змогу її використовувати.;== 29.; Коли LGPL має змогу бути не найкращим вибором ==
У такому випадку proprietary application не обов'язково стає LGPL.; {| class="wikitable"
!; Критерій
ці зміни мають залишатися доступними
Саме цей баланс і робить LGPL важливою.; |-
| 2010-ті
| LGPL активно застосовують, коли потрібно в бібліотеках, desktop-компонентах, multimedia, GUI toolkits та системних компонентах.; Значення
<pre>
8.; характеристика
[[Software license]]
В embedded-системах LGPL теж має змогу бути складною.; Але якщо ви змінюєте саму бібліотеку:
“Мені потрібна ця бібліотека”.; Факт
як змінена бібліотека взаємодіє з програмою.; і:
3.; |-
| LGPL-3.0-only
| Можна використовувати тільки LGPL 3.0.; Це серце weak copyleft:
Для важливих комерційних, distribution, static linking, embedded, mobile або compliance-рішень краще звернутися до юриста або фахівця з open source compliance.; |-
| Тип
| Weak copyleft
| Permissive
|-
| Patent grant
| Залежить від версії й GPLv3-структури
| Явний patent grant
|-
| Зміни licensed-коду
| Мають залишатися під LGPL
| Можуть бути закриті
|-
| Proprietary use
| Дозволено за умовами LGPL
| Дозволено
|-
| NOTICE
| Не Apache-style NOTICE, але notices треба зберігати
| NOTICE-файл важливий, якщо є собою
|-
| ключовий сценарій
| Бібліотеки
| Бібліотеки, SDK, infrastructure, apps
|}
Багато користувачів щодня запускають програми, які використовують LGPL-бібліотеки.; Критерій
* складніша за permissive-ліцензії;
* static linking потребує уваги;
* треба надавати доступ до LGPL-коду й змін;
* потрібно дозволяти заміну або модифікацію бібліотеки;
* реліз ліцензії має велике значення;
* compliance у mobile/embedded має змогу бути непростим.;== 7.; Що таке weak copyleft ==
SPDX вказує, що LGPL-2.1 була випущена в лютому 1999 року, а LGPL-3.0 — 29 червня 2007 року.;</pre>
у відкритій або закритій програмі.; Фраза:
== 43.; Цікаві факти ==
LGPL створили для ситуації, де GPL має змогу бути занадто суворою.; Пояснення
<pre>
є собою бібліотека під LGPL.; |-
| Static linking не завжди заборонений
| Але він створює більше compliance-вимог.;== 32.; Типові помилки новачків ==
|-
| Тип
| Weak copyleft
| Permissive
|-
| Зміни бібліотеки
| Мають залишатися під LGPL
| Можна закрити
|-
| Використання в proprietary software
| Дозволено за умовами LGPL
| Дозволено дуже вільно
|-
| Linking rules
| Важливі
| Майже не мають значення
|-
| Простота
| Складніша
| Дуже проста
|-
| Мета
| Захист свободи бібліотеки
| Максимальна свобода повторного використання
|}
</pre>
LGPL сумісна з GPL у важливому сенсі: LGPL-код можна використовувати в GPL-проєктах.;{{SEO
|title=LGPL — слабка copyleft-ліцензія для бібліотек
|description=Огляд GNU Lesser General Public License: LGPL 2.1, LGPL 3.0, weak copyleft, linking, бібліотеки, права, обов'язки, сумісність із GPL, відмінності від GPL, MIT, BSD і Apache License 2.0.
|keywords=LGPL, GNU Lesser General Public License, LGPL-2.1, LGPL-3.0, weak copyleft, library license, GPL, free software, open source license, dynamic linking, static linking, copyleft
}}
* надає можливість використання в proprietary software;
* захищає свободу самої бібліотеки;
* підходить для reusable components;
* м'якша за GPL;
* сильніша за MIT/BSD у захисті змін бібліотеки;
* сумісна з GPL-світом;
* корисна для бібліотек, які мають поширюватися широко.; |}
{| class="wikitable"
== 36. Compliance checklist ==
Static linking можливий, але compliance складніший.; Але вона додатково не каже:
== 44.; Безпека і відповідальність ==
Приклад:
Сенс слова '''Lesser''' у з цієї причини, що це “менш сувора” форма copyleft порівняно з GPL.; |-
| “LGPL безпечна без перевірки”
| Compliance все одно потрібен.;
У source-файлах:
!;LGPL 3.0 охоплює умови GPL 3.0 і додає спеціальні permissions для бібліотек.; LGPL доцільно обрати, якщо:
“Твій застосунок має змогу бути твоїм.; | Зміни бібліотеки мають лишатися під LGPL.; має змогу дати проєкту більшу гнучкість.; |-
| Static linking потребує уваги
| Потрібно забезпечити можливість заміни LGPL-бібліотеки.; |-
| “LGPL = MIT”
| Обидві дозволяють комерційне використання.; Значення
то ці зміни зазвичай мають бути доступні під LGPL.; |}
Спочатку LGPL розшифровувалась як '''Library General Public License'''.; |}
Але вони цього не помічають.;[[BSD License]]
Якщо ви поширюєте програму з LGPL-бібліотекою, зазвичай потрібно:
{{DISPLAYTITLE:GNU Lesser General Public License}}
LGPL найкраще підходить авторам бібліотек, які хочуть, щоб їхній код залишався вільним, але паралельно з цим міг використовуватися максимально широко — навіть у комерційних і закритих продуктах.; Ти можеш використовувати її
текст LGPL додається до legal notices
!;== 20. LGPL 3.0 ==
!; Вона надає можливість використовувати бібліотеку навіть у proprietary software, але захищає свободу самої бібліотеки.;<pre>
+--> your modifications
</pre>
== 2.; Коротка характеристика ==
</pre>
від функціональні можливості замінити або модифікувати LGPL-бібліотеку.; LGPL каже м'якше:
<pre>
!; |-
| “Dynamic linking завжди звільняє від усіх обов'язків”
| Ні.; |-
| LGPL — weak copyleft
| Вона захищає бібліотеку, але не обов'язково весь застосунок.; |-
| LGPL часто застосовується непомітно
| Багато програм використовують LGPL-бібліотеки, але користувачі цього не бачать.;</pre>
== 40.; LGPL і embedded devices ==
* Free Software Foundation: GNU Lesser General Public License v3.0
* Free Software Foundation: GNU Lesser General Public License v2.1
* GNU Project: Software Licenses
* GNU Project: License identifiers and SPDX guidance
* SPDX License List: LGPL-2.1-only / LGPL-2.1-or-later
* SPDX License List: LGPL-3.0-only / LGPL-3.0-or-later
* Apache Software Foundation: GPL compatibility notes
* Free Software Foundation licensing materials
* Open source compliance documentation
<pre>
== 14.; Основні обов'язки при використанні LGPL ==
користувач системи має змогу замінити libimage.so на сумісну змінену версію
== 28.; Коли варто обрати LGPL ==
У випадку LGPL:
Apache Software Foundation зазначає, що Apache License 2.0 сумісна з GPLv3, але не з GPLv2-only; це істотно для розуміння сумісності з LGPLv3 та старішими GNU-ліцензіями.;[[Категорія:Open Source]]
* чи має змогу користувач системи замінити бібліотеку?; * чи не блокує vendor модифіковану LGPL-бібліотеку?;
|- | LGPL спочатку означала Library GPL | Пізніше назву змінили на Lesser GPL.; BSD !; Dynamic чи static linking?; |- | “Static linking завжди заборонений” | Це популярне спрощення.; * дуже якісною;
- застарілою;
- вразливою;
- неправильно використаною;
- погано інтегрованою;
- несумісною з вашим deployment-моделем.; | Ліцензію, notices і доступ до LGPL-коду все одно треба забезпечити.; Чи доступний source code LGPL-бібліотеки?;
LGPL-2.1-only
6.; Цікавий факт: LGPL — це ліцензія-компроміс
LGPL-бібліотека має змогу бути: !; |- | LGPL 2.1-only + Apache 2.0 | Проблемно | LGPL 2.1-only не має прямої сумісності з Apache 2.0.; |- | Не strong copyleft | Proprietary software має змогу використовувати бібліотеку без відкриття власного коду.; Сумісність !; LGPL == 37.; Цікавий факт: LGPL часто невидима для користувача == має змогу мати іншу ліцензію.;
8.; LGPL і бібліотеки
|- | Weak copyleft boundary | Зазвичай бібліотека / linked component | File-level copyleft |- | ключовий сценарій | Бібліотеки | Файли й компоненти |- | Proprietary integration | Можлива | Можлива |- | Compliance-модель | Сильно залежить від linking | Сильно залежить від modified files |}
користувач системи отримує інформацію про LGPL
!; |- | Захищає зміни бібліотеки
| Модифікації самої LGPL-бібліотеки мають залишатися відкритими.; вона теж має бути під GPL.;У LGPL 3.0 побудована як доповнення до GPL 3.0: офіційно затверджений текст каже, що LGPLv3 передбачено умови GPLv3, але додає спеціальні додаткові дозволи для бібліотек.;== 27.; LGPL і MPL ==
|- | Тип | Weak copyleft | Permissive |- | Зміни licensed-коду | Мають лишатися відкритими під LGPL | Можуть бути закриті |- | Використання в proprietary software | Так | Так |- | Attribution | Так | Так |- | Linking | Має значення | Зазвичай не має особливих обмежень |- | Складність compliance | Вища | Нижча |}
!; |- | “only” і “or later” дуже важливі | Вони впливають на сумісність і можливість переходу на новіші версії.; Для LGPL dynamic linking зазвичай простіший з точки зору compliance.; !; Але саму бібліотеку не закривай і не забороняй людям її змінювати”.; організація бере libimage під LGPL.; |- | Закрити зміни самої LGPL-бібліотеки | Ні | Зміни бібліотеки мають бути доступні під LGPL.; Її головні переважні аспекти:
31.; Недоліки LGPL
“Бери бібліотеку, закривай її зміни, Це не означає “можна reverse engineer усе що завгодно без обмежень”.; LGPL 11.; Зміни libimage мають бути доступні під LGPL.; Рік
|- | Copyleft | Слабкий | Сильний |- | ключовий сценарій | Бібліотеки | Програми й бібліотеки, де потрібен strong copyleft |- | Proprietary application linking | Можливий | Зазвичай проблемний або неможливий при distribution derivative work |- | Зміни самого licensed-коду | Мають лишатися під LGPL | Мають лишатися під GPL |- | Мета | Зберегти свободу бібліотеки | Зберегти свободу всієї похідної програми |} </syntaxhighlight> == 24.; LGPL і MIT License == LGPL-3.0-or-later LGPL в embedded-світі часто потребує окремого compliance-процесу.; LGPL my_app відкрий увесь свій програмний продукт”.;</syntaxhighlight> * перевірити версію бібліотеки; * читати security advisories; * оновлювати залежності; * перевіряти license compliance; * не змішувати несумісні ліцензії; * тестувати linking model; * документувати open source components.; |} !;[[Mozilla Public License]] == 1.; Загальний характеристика == LGPL не надає можливість забороняти користувачу reverse engineering у тій мірі, яка потрібна для debugging modifications LGPL-бібліотеки.; Типові SPDX-варіанти:
!; Загальна логіка: !; Варіант <pre> '''істотно:''' LGPL не означає “можна взяти код і забути про ліцензію”.; * чи не суперечить EULA правам LGPL?; Програма при запуску каже: LGPL функціонує тихо: +--> proprietary code
Якщо користувач системи має право змінити LGPL-бібліотеку,
13.; Що надає можливість LGPL
Тут складніше, бо користувач системи не має змогу без ускладнень замінити окремий `.so` файл.; !; |- | Використовувати в комерційному продукті | Так | Комерційне використання дозволено.; Чи змінювалася сама бібліотека?;== 38.; LGPL і reverse engineering ==
Це істотно для сумісності ліцензій і майбутніх оновлень.; Уявімо: LGPL надає можливість таку структуру, якщо виконуються її умови.; |- | LGPL-3.0-or-later | Можна використовувати LGPL 3.0 або пізнішу версію.; Дозволено?; |- | 2020-ті | LGPL залишається важливою ліцензією для бібліотек, особливо коли автори хочуть дозволити використання в proprietary software, але зберегти свободу самої бібліотеки.; Типові SPDX-варіанти: !; Сумісність залежить від версії LGPL.; |- | LGPL 3.0 побудована поверх GPL 3.0 | Вона додає додаткові permissions до GPLv3.; SPDX і GNU рекомендують використовувати точні ідентифікатори на кшталт `LGPL-2.1-only`, `LGPL-2.1-or-later`, `LGPL-3.0-only` або `LGPL-3.0-or-later`, а не старі неоднозначні скорочення.; |- | Поширювати бібліотеку | Так | За умовами LGPL.;== 42.; Людське пояснення: чим є собою LGPL == !; Вона не каже:
- у multimedia-бібліотеках;
- GUI toolkits;
- системних компонентах;
- runtime-бібліотеках;
- cross-platform libraries;
- desktop-застосунках;
- embedded-системах;
- комерційних програмах.; |-
| Корпоративна обережність
| Деякі компанії бояться LGPL через copyleft-елементи.;“Якщо ти використав мою бібліотеку,
LGPL-2.1-only
Але якщо ти змінюєш саму бібліотеку, Головне питання LGPL не “динамічно чи статично”, а:
!; LGPL надає можливість ширше використання: Простими словами: |- | Dynamic linking | Програма використовує окремий shared library-файл під час запуску або роботи.; Чи збережено copyright notices?; Чи перевірена сумісність з іншими ліцензіями?; Вона часто зустрічається в старіших і зрілих open source-бібліотеках.; |- | Використовувати в закритому застосунку | Так | Якщо застосунок лише використовує LGPL-бібліотеку і виконані умови.; Недолік Ключові етапи:
Змінює код самої libimage.; Перевага
але програма, яка її використовує,
Див.; 47.; додатково
Якщо програмне забезпечення лише функціонує на сервері як SaaS і не поширюється користувачам, обов'язки щодо надання source code можуть не виникати так само, як при розповсюдженні binary.; користувач системи зберігає свободу щодо самої бібліотеки.; Перед використанням істотно: Поширює програмний продукт із цією зміненою libimage.; !; |- | Static linking | Бібліотека вбудовується прямо в executable під час збірки.; :contentReference [oaicite:0]{index=0}
4.; |- | Dynamic linking зазвичай простіший | Бо користувач системи має змогу замінити shared library.; Критерій ліцензійний пакет не гарантує якість або безпеку коду.; * чи не заважає secure boot?; Це конкретно про права, потрібні для використання свободи модифікації LGPL-компонента.; Приклад:
15.; Зміни бібліотеки
і ніхто більше нічого не побачить”.; LGPL можна пояснити так: Weak copyleft або слабкий copyleft означає, що copyleft застосовується не до всього продукту, а переважно до конкретного LGPL-компонента.; Тип !; Але решта proprietary application має змогу залишатися закритою, якщо вона лише використовує бібліотеку згідно з умовами LGPL.; libimage.so — LGPL-бібліотека
LGPL і Apache License 2.; 23.0
5.; історичний розвиток
45.; Висновок
офіційно затверджений текст LGPL 2.1 підкреслює, що вона застосовується до певних бібліотек і надає можливість linking таких бібліотек із non-free programs.; |-
| 1991 | - | LGPL 2.1-or-later + Apache 2.0 | Можливо через LGPL 3.0 | Якщо можна обрати пізнішу версію, можна перейти на LGPLv3-сценарій.; GPL
офіційно затверджений текст LGPL 2.1 прямо пояснює, що ця ліцензійний пакет застосовується до певних бібліотек і відрізняється від звичайної GPL, бо надає можливість linking таких бібліотек із non-free programs.;
Програма лежить окремо.; Чи немає EULA, яка забороняє reverse engineering для debugging змін?; |- |
“Можна змінити LGPL-бібліотеку й закрити зміни” | Перевіряти версію, linking і спосіб distribution.; Чи додано текст ліцензії?; |- | Змінювати бібліотеку | Так | Але зміни самої LGPL-бібліотеки мають залишатися під LGPL.; LGPL 3.0 — новіша реліз, пов'язана з GPL 3.0.; :contentReference [oaicite:5]{index=5}
Якщо ви без ускладнень використовуєте LGPL-бібліотеку без змін, ваш застосунок має змогу мати іншу ліцензію.;Static linking "license": "LGPL-3.0-or-later" Іноді кажуть: Можливий сценарій: |
- | LGPL надає можливість proprietary linking | Саме з цієї причини її часто використовують для бібліотек.; :contentReference [oaicite:2]{index=2}
|
|---|