変更し、変更したLGLP Libに対して動的にリンクする場合、変更を利用可能にする必要がありますか? [閉まっている]
質問
LGPL Libで、現在動的にリンクしているバグを見つけました。
- アプリケーションはクローズドソースです
- LGPL Libに動的にリンクします
- アプリケーションは一般公開されます
libを変更した場合、アプリケーションで変更されたソースファイルを利用できるようにする必要があると理解していますが、これは正しいですか?
解決
LGPLライブラリの変更されたコードを再配布しているため、そのライブラリのソースをリリースする必要があります(バグ修正)。これは、アプリケーション全体のソースコードをリリースする必要があるという意味ではなく、LGPLされたライブラリだけです。
また、GPL / LGPLでは、バイナリを提供した人にソースコードを提供するだけでよいことに注意してください。たとえば、世界中の誰もがダウンロードできるようにソースをウェブ上に置きます。確実に準拠する方法は、ソースをディストリビューションにパックして、人々がバイナリと一緒に入手できるようにすることです。そうすれば、ソースが利用できなかったことに文句を言うことはできません。
他のヒント
別の解決策(常に可能とは限りませんが)は、LGPLのライブラリから独自のサブクラスを派生させ、そこで必要な修正を行うことです。もちろん、より良いアプローチはライブラリのメンテナーに修正プログラムを提出することですが、すぐにコードを出荷する必要がある場合は、これを検討する必要があるかもしれません。ものを派生させることにより、LGPLに違反することはありません。
ライセンスから:
「アプリケーション」とは、ライブラリが提供するインターフェースを利用する作品ですが、それ以外の場合はライブラリに基づいていません。ライブラリで定義されたクラスのサブクラスを定義することは、ライブラリで提供されるインターフェイスを使用するモードと見なされます。