Microsoft создает свои окна и библиотеку DLL MFC и т.д. Разработчик с открытым исходным кодом создает новое приложение MFC и выпускает исходный код как GPL. Приложение должно связываться с MS DLL/библиотеками для работы в Windows, но я не думаю, что кто-то может утверждать, что теперь мы имеем право заставить Microsoft GPL их DLL.
Означает ли это, что лицензия GPL действительно зависит от того, какой из них сначала создан? Если сначала создается собственная библиотека (например, DLL Windows), которая не содержит ссылок, а также код GPL и позже с ним связана программа GPL, то программа GPL не может преобразовать запатентованную библиотеку в GPL, хотя проприетарный код "связан" с кодом GPL.
Если это так, может ли компания такая NVidia или RealNetworks сделать следующее? Предположим, что им нравится хранить приватную библиотеку движка для декодирования медиафайлов HDDecoding, но они также хотят "использовать" код GPL с открытым кодом для демонстрации своего оборудования.
- Они создают запатентованную библиотеку для декодирования мультимедиа и выпуска некоторых примеров кода.
- Кто-то (разработка с открытым исходным кодом) создает "плагин", который связан с этой запатентованной библиотекой для кода GPLed, такого как XBMC, Mplayer или VLC.
- Могут ли они утверждать, что, поскольку они сначала создали проприетарную библиотеку (так же, как MS создают все библиотеки DLL), программы GPL, которые ссылаются на их собственный код, не скрывают их в коде GPL.
Можно теоретически утверждать, что разработчик с открытым исходным кодом, который создает файл GPL vlc.exe, который ссылается на библиотеку медиадекодеров NVidia, нарушает лицензию GPL.
Означает ли это, что все программы GPL, работающие в Windows, такие как VLC, git, cygwin и т.д., все нарушают лицензию GPL, потому что им определенно нужно связать с проприетарными библиотеками Microsoft Windows для запуска.
Случай 2: что с этим не так:
NVidia может создать новую библиотеку абстракции оборудования, которая скрывает последние графические функции. Они также создают драйвер FreeBSD с этой библиотекой и освобождают исходный код драйвера BSD, но не исходный код библиотеки.
Кто-то (разработчик Linux) может реализовать драйвер linux, который связывается с этой библиотекой, для создания графического драйвера NVidia для Linux. Но так как NVidia этого не сделала, они могут сохранить источник библиотеки "скрытым", включив поддержку Linux.
Это, безусловно, нарушает дух GPL.
Означает ли это, что запуск любого exe, созданного с использованием источника GPLed в Windows/Mac/Iphone/PSP3, также нарушает дух GPL?