Vendi codice usando il codice GPL Open Source collegato in modo dinamico?

5

Sono davvero confuso.

La GPL afferma che se inizi con il codice GPL e modifichi quel codice, devi rilasciare il tuo codice con modifiche gratuite anche sotto GPL.

Ma cosa succede se si utilizza semplicemente il codice GPL esistente senza modifiche come libreria? Puoi quindi scrivere un software per interfacciare con quel codice, invariato, che è closed source?

    
posta Jason 16.02.2013 - 19:07
fonte

3 risposte

8

La GPL stabilisce che i lavori derivati devono essere rilasciati sotto una licenza compatibile GPL ( se rilasciato). Detto questo, c'è qualche ambiguità su ciò che costituisce esattamente un lavoro derivato e tecnicamente ci sono modi per usare il codice GPL in progetti proprietari senza che il progetto diventi "infetto" (enfasi mia):

Can I release a non-free program that's designed to load a GPL-covered plug-in?

It depends on how the program invokes its plug-ins. For instance, if the program uses only simple fork and exec to invoke and communicate with plug-ins, then the plug-ins are separate programs, so the license of the plug-in makes no requirements about the main program.

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. In order to use the GPL-covered plug-ins, the main program must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when the main program is distributed for use with these plug-ins.

If the program dynamically links plug-ins, but the communication between them is limited to invoking the ‘main’ function of the plug-in with some options and waiting for it to return, that is a borderline case.

Using shared memory to communicate with complex data structures is pretty much equivalent to dynamic linking.

See also the question I am writing free software that uses a non-free library.

Personalmente, contatterei la FSF con i dettagli del progetto e chiedere chiarimenti prima di utilizzare il codice GPL. Se la FSF attesta che non è possibile utilizzare il codice GPL, allora contattare l'autore originale del codice e chiedere loro (molto gentilmente) per un LGPL versione di esso. Le possibilità sono estremamente ridotte, ma non si sa mai.

    
risposta data 16.02.2013 - 20:11
fonte
0

Non è possibile utilizzare il codice GPL nel software proprietario senza che il codice proprietario venga "infettato" dalla licenza GPL. Il tuo codice diventerebbe quindi anche codice GPL. Non importa se hai modificato il codice GPL o meno. Se il tuo codice lo usa, anche questo diventa codice GPL.

Pertanto, se stai creando un qualsiasi tipo di software in cui è importante che il tuo codice rimanga proprietario, non utilizzare il codice GPL.

Tuttavia, questo non vuol dire che le entità aziendali non possano realizzare profitti usando il codice GPL. Se ti concentri sulla creazione di soluzioni che ti aiutano a fornire servizi migliori ai clienti o che soddisfano un bisogno che richiede il tuo continuo coinvolgimento nel supporto del software, allora puoi addebitare i costi del servizio. Ad esempio, il sistema operativo Android è open source, ma Google, Amazon, Verizon, AT & T e altre entità traggono profitto da esso ogni giorno perché fatturano i servizi resi, non per vendere il software.

Inoltre, questo aiuta le aziende hardware come Motorola e Samsung a vendere i loro dispositivi, dato che usano anche Android.

Inoltre, basandosi sul caso "servizio" e su ciò che Martin Beckett menziona nei commenti , se il codice che stai usando è qualcosa che verrà usato solo internamente e non distribuito al mondo esterno, puoi usare il codice GPL senza doverlo rilasciare al mondo.

È sempre tua scelta se rilasciare o meno il prodotto, ma se rilasci il prodotto, devi rilasciare entrambi i binari e il codice secondo i termini della GPL.

    
risposta data 16.02.2013 - 19:46
fonte
-3

Credo che il software proprietario closed source possa collegarsi ai moduli binari GPL senza essere "infetto" dalla GPL. In quale altro modo prodotti come Oracle, DB2 o SAP possono essere eseguiti legalmente su Linux? Saranno tutti collegati alle librerie di sistema condivise GPL. Pensa a tutti i driver di dispositivi Linux proprietari là fuori che si collegano al kernel di Linux.

    
risposta data 10.08.2016 - 19:57
fonte

Leggi altre domande sui tag