Non ci sono restrizioni esplicite sull'uso nei prodotti commerciali, solo sulla distribuzione di opere derivate (o uso come servizio per il codice AGPL) senza distribuzione del loro codice sorgente.
Quindi, se si desidera utilizzare questa libreria, si dovrà rispettare la licenza GPL o pagare per essere concessa in licenza in base alla licenza.
Conformità con la licenza GPL / AGPL
Indipendentemente dal fatto che un'applicazione sia considerata un lavoro derivato , e quindi se si debba concedere la licenza sotto una licenza compatibile, dipende da come viene chiamato il codice GPL.
Se condividi interfacce e strutture dati tra il software GPL / AGPL e il tuo software, molto probabilmente saranno considerate opere derivate e il tuo software dovrà essere concesso in licenza con una licenza compatibile.
Se si utilizza qualcosa come un pipe unix per alimentare un flusso di dati da un programma a un altro, tali programmi si trovano in spazi di processo separati e non condividono strutture di dati, quindi sarebbero non molto probabilmente considera le opere derivate e puoi allegare qualsiasi licenza che ti piace al tuo codice.
Da Domande frequenti sulle licenze GNU :
What is the difference between an “aggregate” and other kinds of “modified versions”?
An “aggregate” consists of a number of separate programs, distributed together on the same CD-ROM or other media. The GPL permits you to create and distribute an aggregate, even when the licenses of the other software are non-free or GPL-incompatible. The only condition is that you cannot release the aggregate under a license that prohibits users from exercising rights that each program's individual license would grant them.
Where's the line between two separate programs, and one program with two parts? This is a legal question, which ultimately judges will decide. We believe that a proper criterion depends both on the mechanism of communication (exec, pipes, rpc, function calls within a shared address space, etc.) and the semantics of the communication (what kinds of information are interchanged).
If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.
By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.
Per ulteriori informazioni e suggerimenti aggiuntivi, consulta questa risposta a Posso richiamare dinamicamente un software LGPL / GPL nella mia applicazione closed-source?
Come sempre, a meno che la tua situazione non sia chiara, potresti consultare un avvocato esperto in licenze open source prima di basarti il modello di business su di esso.
Paga per l'utilizzo tramite una licenza commerciale
Se si determina che il prodotto potrebbe essere un'opera derivata e non si desidera aprire l'origine del prodotto, l'altra opzione è semplicemente concedere in licenza la biblioteca in termini commerciali. In base alle Domande frequenti sulle licenze TetGen (domanda 2) la libreria ha una doppia licenza e tu può contattarli per prezzi e condizioni.
Se questo si adatta al tuo modello di business, allora questo può essere un ottimo modo per ripagare la comunità open source, incoraggiarne la crescita e lo sviluppo futuro e contribuire a condividere parte dei profitti generati attraverso la distribuzione del loro software più ampiamente. Tutti vincono.