Die Grundvoraussetzung von LGPL besteht darin, die LGPL-lizenzierte Bibliothek und Ihr eigenes Produkt gut genug voneinander zu trennen . Auf diese Weise können Benutzer ihre eigene Version der Bibliothek anstelle der mit Ihrer Software gelieferten Version bereitstellen (z. B. mit den behobenen Fehlern). Um dies zu erreichen, haben Sie zwei Möglichkeiten:
- Verwenden Sie den LGPL-Code als gemeinsam genutzte Bibliothek (damit die Benutzer nur ihre Binärdatei der Bibliothek über die von Ihnen gelieferte kopieren)
- Geben Sie den Quellcode des gesamten Projekts an (damit die Benutzer ihren Quellcode der Bibliothek kopieren und alles neu kompilieren können).
Beachten Sie jedoch, dass eine bloße Trennung nicht ausreicht, obwohl sie erforderlich ist. Sie sollten Ihren Benutzern eine dokumentierte Möglichkeit bieten, eine Bibliothek durch ihre Version zu ersetzen (z. B. wie Sie Firmware hochladen oder einen Python-Wrapper für eine LGPL C ++ - Bibliothek neu kompilieren).
Die zweite bemerkenswerte Klausel ist die Zuschreibungspflicht . Dies sollte dazu beitragen , den Namen des ursprünglichen Entwicklers der Bibliothek bekannt zu machen und zu verdeutlichen, dass die coole Software möglicherweise von jemand anderem entwickelt wurde :). Im entsprechenden Abschnitt des "About" -Fensters oder einer README-Datei (wenn Ihre Lizenz Apache ist, ist dies eine NOTICE
Datei) sollten Sie den Namen der LGPL-Arbeit angeben, die Sie verwendet haben.
Beachten Sie, dass ich kein Anwalt bin und dies keine Rechtsberatung ist. Beachten Sie, dass ich auch kein Klempner bin und dies kein Hygieneratschlag ist.
IANAL, aber ich verstehe, dass der Sinn der LGPL darin besteht, dass sie den Code nicht "infiziert", abhängig von der GPL oder der AGPL. Sie können also LGPL-Code als Abhängigkeit haben und müssen nichts tun.
Das heißt, wenn Sie LGPL-Code mit Ihrer Anwendung ändern / modifizieren / verteilen , müssen Sie diesen Code öffentlich verfügbar machen.
quelle