Примечание: это юридический вопрос. Programmers.SE - это не юридический форум, а форум по программированию. Хотя люди здесь знают немного о программировании, они ничего не знают о законе. Если вы хотите задать юридический вопрос, вы должны задать его на юридическом форуме, где есть люди, которые действительно что-то знают о предмете.
GPL ничего не говорит о статических или динамических ссылках. Он даже ничего не говорит о связывании вообще . Каждый юрист или судья, с которыми я разговаривал, говорит, что проблема статического и динамического связывания совершенно неактуальна.
Авторское право - это творчество. Статическое и динамическое связывание - это техническая деталь реализации. Независимо от того, является ли что-то статически или динамически связанным, не является творческим действием, оно не может изменить статус авторского права на произведение.
В своем вопросе вы говорите о «устных языках». Но этот термин не имеет смысла: не существует такой вещи, как интерпретируемый язык. Язык - это абстрактный набор математических правил и ограничений. Язык не интерпретируется и не компилируется. Язык просто есть . Термин «интерпретируемый язык» не просто неверен , он бессмысленен . Если бы английский был типизированным языком, это была бы ошибка типа.
Интерпретация и компиляция - это черты интерпретатора или компилятора (дух!), А не языка. Каждый язык может быть реализован с помощью интерпретатора, и каждый язык может быть реализован с помощью компилятора. У большинства языков есть оба. Большинство современных языковых реализаций даже объединяют оба в одном механизме исполнения.
Например, реализация Rubinius Ruby содержит статический заблаговременный компилятор, который компилирует код Ruby в байт-код Rubinius, интерпретатор, который интерпретирует байт-код Rubinius, и динамический компилятор Just-in-Time, который компилирует байт-код Rubinius в LLVM. IR, который, в свою очередь, инфраструктура LLVM компилируется в машинный код. Реализация MacRuby Ruby вообще не содержит интерпретатора, она компилирует код Ruby прямо в LLVM IR, а затем в машинный код.
С другой стороны, есть интерпретаторы для C или C ++.
Все это только технические детали. Это совершенно не имеет отношения к авторскому праву.
Просто не имеет смысла, если кто-то нарушает чужие авторские права или нет, зависит от того, решит ли какой-либо третий человек запустить программу с интерпретатором или сначала скомпилировать ее.
Вопрос в том, является ли произведение производным от другой работы. Он может быть динамически связан и все же получен, и он может быть статически связан и вообще не получен.