LGPL отличается от GPL тем, что допускает динамическое связывание с закрытым кодом. Всё чудесно, но только в нынешних реалиях слова "динамическое связывание" по сути не говорят вообще почти ни о чём.
Вот например пишу я программу на C. В ней, допустим, реализован алгоритм, который я не хочу показывать. Тогда GPL мне использовать нельзя. А LGPL можно, но только если лицензированные под ней артефакты будут отдельными файлами. А если я эту прогу соберу под, например, Андроид, где никто без распаковывания этих файлов не увидит, это считается?..
Ладно, вот пример экстремальнее. Я пишу программу на Питоне и юзаю PyQt, который GPL. Ок, всё, что непосредственно взаимодействует с Qt, тоже будет GPL (либо прощайте £350, или сколько там). Но другие модули своей программы я могу лицензировать, как захочу (WTFPL например, чтобы убрать вирусность). Причём я по идее даже могу из них вызвать GPL-ный модуль, так как это ни фига не динамическое связывание: интерпретатор Питона просто загрузил оба файла, как данные, и что-то с ними делает. Это по сути неправильно, но формально-то как?
Я чего-то принципиальноне так понял? Если да, то как правильно?