nexeuse
25.05.2012 17:39
Допустим, я написал программу, которая использует библиотеку под GPL.
Если я выложу эту программу в виде исходных кодов, а не в виде бинарников, то я буду обязан лицензировать её под GPL?
Да
//Cap. O.
Но я же не буду распространять ни саму библиотеку под GPL, ни куски кода из неё ни в бинарном виде, ни в виде исходных кодов.
Это будет derived work.
Можно написать программу, которая использует API, который есть [в том числе] в какой-нибудь GPL'ной библиотеке. Тогда это будет ПРОСТО API и всё будет ок. Т. е. будет возможность реализовать API в пипитарной библиотеке и использовать её вместо.
IANAL.
Ну использует библиотеку == использует API, нет?
А в пипиритарной не получится. Если я соберу программу, то она будет линковаться с библиотекой под GPL, поэтому бинарник придётся лицензировать тоже под GPL. А исходный код ни с чем не линкуется, поэтому можно его не под GPL распространять.
нет, реальзация API может быть в нескольких библиотеках под несколькими лицензиями. Соответственно, можешь выбирать с какими из реализаций API можно линковаться и какие лицензии использовать.
Т.е. я должен лицензировать программу под GPL только из-за факта того, что я использовал имена(сигнатуры) функций, которые используются в какой-то GPL-ной библиотеки?
Повторяюсь, я выкладываю только сорцы, а не слинкованный бинарник.
В общем, [гипотетическая] ситуация такова:
Я написал программу и хочу распространять под свободной пермиссивной лицензией, но этому мешает библиотека под GPL, которая используется в этой программе.
Если я правильно понимаю, то я могу выложить исходный код под, например BSD. Если кто-то возжелает сделать проприетарный форк этой программы, я не хочу этому препятствовать.
Но, в таком случае, ему придётся либо поправить мою программу так, чтобы она не использовала библиотеку под GPL, либо ему придётся как-нибудь договориться с автором этой библиотеки. Но это будут уже не мои проблемы.
типа того. Юзать он её и так сможет, даже с GPL'ной либой. Распространять — нет.
Ну норм, я теперь спокоен.