Linkování GPL s nesvobodnou dll knihovnou

Linkování GPL s nesvobodnou dll knihovnou
« kdy: 26. 10. 2015, 00:18:25 »
Dobrý den,

píši ovládací sw k jednomu hw a nejsem si jist, zda-li ho smím distribuovat pod GPL (v3). V programu používám ovladač od výrobce hw (distribuovaný ve formě dll knihovny), tato knihovna se do systému instaluje spolu s ovladačem, nebyla by tedy součástí distribuce mého sw. Horší je však, že MinGW ji dynamicky linkuje pomocí import knihovny *.lib souboru a zároveň *.h souboru obsahujícího následující text

****************************************************************
*                                                              *
* C Dynamic Link Library (DLL) the AOTF Driver.                *
* Copyright (C) 2004, Crystal Technology, Inc.                 *
*                                                              *
* Revision History:                                            *
* Date         Who            Comments                         *
* 2004/09/13   Dale Gifford   Genesis.                         *
*                                                              *
****************************************************************/
/

Mohu svou aplikaci distribuovat pod GPL, pokud
- má instalačka nebude obsahovat nesvobodnou dll s ovladačem (je již v sytému všech potenciálních uživatelů)
- v distribuci zdrojových kódů nezahrnu daný header a lib soubor a v HOWTO napíšu, že pro kompilaci je jej nutné zkopírovat z nainstalovaného balíčku ovladače ?

Může mi nějakým způsobem výrobce HW zakázat takovýto SW zveřejnit?
« Poslední změna: 26. 10. 2015, 09:13:25 od Petr Krčmář »


_pepak

Re:Linkování GPL programu s nesvobodnou dll knihovnou (ovladačem)
« Odpověď #1 kdy: 26. 10. 2015, 05:39:35 »
Samozřejmě se musíš podívat na licenci ke knihovně, kterou chceš využít, ale pokud už její autor dává k dispozici rozhraní pro její využití, tak pravděpodobně budeš mít větší problémy se zastánci GPL než s autorem původní knihovny. Podle mě je tvoje zamýšlené použití ještě v souladu s GPL. Přinejmenším na základě analogie by to mělo být možné ( http://www.gnu.org/licenses/gpl-faq.en.html#CombinePublicDomainWithGPL ), ale bohužel v GPL je často vidět přístup "z GPL se smí využívat ne-GPL, ale opačně to rozhodně nejde" (i když koukám, že GPL FAQ už trochu slevilo z agresivní rétoriky a teď to jen nedoporučuje, místo aby to zakazovalo: http://www.gnu.org/licenses/gpl-faq.en.html#FSWithNFLibs ).

Re:Linkování GPL s nesvobodnou dll knihovnou
« Odpověď #2 kdy: 26. 10. 2015, 09:30:56 »
Ono, co jsem zatím pochopil, bude asi hlavní otázkou, zda-li je ovladač zařízení možno považovat za systémovou knihovnu ve smyslu GNU GPL.

nou

Re:Linkování GPL s nesvobodnou dll knihovnou
« Odpověď #3 kdy: 26. 10. 2015, 10:56:52 »
Ten softver je cely tvoj takze mozes do GPL licencie pridat vynimku. Je to aj spomenute v tom GPL FAQ. http://www.gnu.org/licenses/gpl-faq.en.html#GPLIncompatibleLibs
Citace
Only the copyright holders for the program can legally release their software under these terms. If you wrote the whole program yourself, then assuming your employer or school does not claim the copyright, you are the copyright holder—so you can authorize the exception.

Takze treba do GPL licencie ktoru budes davat k programu takuto vynimku:
Citace

    Copyright (C) [years] [name of copyright holder]

    This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along with this program; if not, see <http://www.gnu.org/licenses>.

    Additional permission under GNU GPL version 3 section 7

    If you modify this Program, or any covered work, by linking or combining it with [name of library] (or a modified version of that library), containing parts covered by the terms of [name of library's license], the licensors of this Program grant you additional permission to convey the resulting work. {Corresponding Source for a non-source form of such a combination shall include the source code for the parts of [name of library] used as well as that of the covered work.}