Перейти до вмісту

LGPL

Матеріал з K2 ERP Wiki

25.; LGPL і BSD License

Приклад:

Тоді:
Це спрощення.;<pre>

2.; Характеристика

Чи має змогу користувач системи реально замінити або модифікувати LGPL-бібліотеку?; |-
| Версії мають значення
| LGPL-2.1-only, LGPL-2.1-or-later, LGPL-3.0-only — це різні сценарії.; !; | LGPL має copyleft для самої бібліотеки.;

Application

Приклад:

Weak copyleft

Саме з цієї причини 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 Інший сценарій:

SPDX

для всіх користувачів”.;[[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 | Вища | Нижча |}

Open source

!; |- | “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 == !; Вона не каже:

Free Software Foundation

  • у 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}

Dynamic linking

Open source compliance

Якщо ви без ускладнень використовуєте LGPL-бібліотеку без змін, ваш застосунок має змогу мати іншу ліцензію.;Static linking

"license": "LGPL-3.0-or-later"

Іноді кажуть:


Можливий сценарій:

46.; Джерела

- LGPL надає можливість proprietary linking Саме з цієї причини її часто використовують для бібліотек.; :contentReference [oaicite:2]{index=2}
; 1.; LGPL — це важлива weak copyleft-ліцензія, розроблена переважно для бібліотек.; Mozilla Public License або MPL теж є собою weak copyleft-ліцензією, але функціонує інакше.; LGPL 2.1 — дуже поширена реліз LGPL.; Чи доступні зміни LGPL-бібліотеки?; LGPL можна використовувати тільки з dynamic linking.; LGPL Якщо створюєш похідну програму і поширюєш її,

17.; LGPL і SaaS


Бібліотеку “вшивають” прямо в програму.; | LGPL слабша й надає можливість linking із proprietary programs.; :contentReference [oaicite:7]{index=7}
LGPL library
7.; Якщо ви змінюєте саму LGPL-бібліотеку або поширюєте програму з нею, потрібно виконувати умови ліцензії: зберігати ліцензійні повідомлення, надавати доступ до LGPL-коду та не забороняти користувачу замінити або модифікувати бібліотеку.; характеристика
;
<syntaxhighlight lang="toml">
1989 - Баланс Компроміс між MIT/BSD і GPL.; Бібліотека залишається вільною, Copyleft Linking — це підключення бібліотеки до програми.