Einzelnen Beitrag anzeigen

mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#25

AW: MySQL, GPL, UniDAC - Ist das alles rechtens so?

  Alt 20. Okt 2011, 18:03
Eine Libary unter der GPL darf nur dann in nicht GPL-Anwendungen verwendet werden, wenn diese eine "linked to" Klausel in der Lizentvereinbarung besitzt (GPL linking exception). Sonst nicht. Diese wird die Lizenz von MySQL aber nicht vorweisen.
http://en.wikipedia.org/wiki/GPL_linking_exception
Die GPL linking exception handelt aber von statisch gelinktem Code (also etwa .obj), während DLLs schon dem Namen nach Dynamic Link Libraries sind, die man zudem noch dynamisch (LoadLibrary, GetProcAddress) statt statisch (PE Import Table) laden kann, die also doppelt dynamisch einbindbar wären.

Um etwas aus dem von Dir erwähnten Wikipedia-Artikel zu zitieren, der diese meine obige These stützt:

Zitat von Wikipedia:
Such modified licenses enable software projects which provide "library" code, to be "linked to" the programs that use them, without applying the full terms of the GPL to the using program. Linking is the technical process of connecting code in a library to the using code, to produce a single executable file.
Dann geht es weiter mit:
Zitat von Wikipedia:
It is performed either at compile time or run-time in order to produce functional machine-readable code.
Hier wird die Runtime mit einbezogen. Wobei zur Runtime geladene DLLs zwar mit im Prozessspeicher sind, es dort aber gar keine "Files" gibt, und das nahste Äquivalent, Module, die geladene DLL immer noch "trennt", so daß es nicht dieselbe Datei wäre. Insofern würde ich auch dies immer noch nur auf Linking im Stil von .obj sehen.

In meinen Augen bezieht sich die GPL Linking Exception daher auf einen härteren Verbund, als das Einbinden von DLLs wäre. Womit auch dieser Zusatz nicht wirklich klar wäre, schade!
Die Dll wird im Kontext des Hauptprogrammes geladen, also dynamisch gelinkt. Diese Erweiterung erlaubt es, GPL Code gegen ein Nicht-GPL Programm zu linken, ohne geht das nicht.
Markus Kinzler
  Mit Zitat antworten Zitat