Ho scritto un software utilizzando la Microsoft Solver Foundation . Ora che il lavoro è finito, voglio rilasciare il codice sotto i Termini della GPLv3, se possibile.
Il problema è che GPLv3 afferma nella sezione 1:
The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
Per come la vedo io, la Solver Foundation non rientra in questa definizione, rendendola incompatibile con la GPL (che non è una sorpresa di per sé).
Ora, non voglio distribuire alcuna forma di MSF (o la licenza Gurobi inclusa per quella parte) e lo farò non fornire alcun file binario per il software, quindi non sono sicuro che il fatto che MSF non sia una libreria di sistema influisce sulle mie opzioni di licenza (la prima volta devo scegliere una licenza da sola per qualsiasi cosa).
Il resto delle librerie che ho usato usano le licenze Apache2 e (L) GPLv3 più la licenza zlib per NUnit (che consente tutto per la distribuzione binaria), quindi quelle non dovrebbero essere un problema (correggimi se ho torto) .
Ma la parte di MSF e Gurobi mi disturba un po '. Quello che avevo in mente era di fornire la soluzione Visual Studio (che elenca MSF come dipendenza) e invece di includere le DLL del plugin gurobi, ci sarebbe un readme su come includerle dopo aver acquisito il risolutore gurobi insieme a MSF.
Quindi, è possibile? In caso contrario, potrebbe essere trovata una diversa licenza FOSS?