LGPL/MPL и статические библиотеки
Мне нужно скомпилировать лицензионный код LGPL в проприетарную статическую библиотеку iOS. Поскольку код используется в статической библиотеке, я не могу ссылаться на предварительно скомпилированную версию лицензионной библиотеки LGPL.
Как мне поступить, и что мне выпустить, если я скомпилирую это в мою библиотеку? Я, очевидно, не могу выпустить (весь) частный источник.
Конкретная библиотека, о которой я говорю, это libical, которая лицензирована под LGPL 2.1 или MPL 1.0.
2 ответа
Это предварительно с помощью обычного IANAL:
Зависит от версии используемого LGPL. Если версия 2, вам не нужно указывать исходный код, пока его не попросят. Так написана лицензия. Однако, когда его попросят, вам нужно будет предоставить его через какой-то легко доступный носитель.
Если это LGPLv3, я предлагаю найти другую библиотеку. Семейство лицензий GPLv3 вообще не совместимо с дистрибутивом AppStore.
Лицензия LGPL говорит, что вам нужно предоставить три бита:
- Исходный код LGPL, используемый в вашем продукте.
- Объектные файлы вашего проприетарного кода
- Инструмент для создания исходного кода и связывания его с объектными файлами, в результате чего получается тот же продукт, который вы отправили в Appstore.
Это утомительно и сложно, но очень выполнимо.