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!