Sto cercando di creare un progetto che utilizza una copia non modificata di libconfig ( link ). libconfig è LGPL, ma non voglio open source nessuno del mio codice. Secondo la mia comprensione, LGPL significa che ho bisogno di fornire il codice sorgente per la libreria (facile), e un mezzo per usare la loro versione modificata della libreria . È l'ultimo componente che mi confonde un po '(scusate per qualche ingenuità).
Attualmente, la mia soluzione VS2010 ha il mio progetto e il progetto libconfig. Il progetto libconfig costruisce una dll, ma ho anche bisogno di collegare il mio progetto contro il .lib di libconfig per ottenere le definizioni della DLL (qualcuno può spiegare perché è necessario, quando sto già includendo il file di intestazione?). Nonostante il collegamento, il file .dll deve essere presente al runtime affinché il file binario sia in grado di eseguire
Devo fornire tutti i file .obj e .lib che produco per soddisfare la LGPL? C'è un modo per evitare il collegamento del file .lib? Ho esaminato LoadLibary e GetProcAddress ma sembra molto più complicato di quanto vorrei.
O sto semplicemente sovrastimando i requisiti della LGPL qui?
Se esiste un'altra libreria di configurazione permissiva per c ++, ciò risolverà anche il mio dilemma. Ma non sono stato in grado di trovare qualcosa (e vorrei evitare di aumentare).