Ho cercato e letto molti post su LGPL e C, e quando sono riuscito a trovarne uno relativo a Java, la mia mente non si è ancora rilassata, quindi cercherò di essere più specifico e, spero, ottenere una guida valida, e alla fine vorrei ovviamente consultare un avvocato!
Configurazione:
- C'è una libreria LGPL, chiamiamola Lib-B
- Ho la mia libreria che si basa su Lib-B consente di chiamarla My-Lib
Secondo me l'architettura Lib-B non è ben formulata e voglio applicare in My-Lib la mia architettura personale e utilizzare alcuni delle funzioni di Lib-B .
Il problema è che Lib-B racchiude le funzioni a cui desidero accedere in un modo che non si adatta all'architettura di My-Lib , quindi ho cambiato Lib-B e incapsulato (duplicato) le linee di codice che volevo / richiedevo all'interno di un paio di oggetti ancora all'interno di Lib-B e chiamiamo queste funzioni da My-Lib .
Questa è la mia attuale configurazione statica ...
=====================
La seconda cosa che posso fare è rendere dinamica la mia configurazione, quindi:
- Potrei creare una libreria che definisca un'interfaccia con le funzioni richieste My-Lib di chiamarla Lib-A .
Successivamente, compilerò e collegherò My-Lib con Lib-A e permetti a Lib-B di implementare l'interfaccia da Lib-A e carica Lib-B dinamicamente in My-Lib .
Capisco che in entrambi i casi devo rilasciare le mie modifiche di Lib-B come LGPL e consentire ai miei utenti finali di accedere al codice, ecc ... che dire di My-Lib
Grazie, Adamo.