web-dev-qa-db-ja.com

オブジェクトファイルの提供はLGPL再リンク句を満たしますか?

SOに関するこの質問 から、私はそれを読みました:

独自のソースコード+ LGPLソースコード

  • 静的にリンク:
    • どちらもLGPLとしてリリースする必要があります。
    • または、ユーザーがアプリケーションを別のバージョンのLGPLソースコードに再リンクできるようにするすべてを提供します。この場合、他の要件は、動的にリンクされた場合と同じです。

したがって、オブジェクトファイルを提供するだけで、LGPLライブラリを独自のコードアプリケーションに静的にリンクするという点でLGPLを満たすのに十分であるように思えます。実行可能ファイルは静的にリンクされていますが、オブジェクトファイルを提供すると、エンドユーザーはアプリケーションを再コンパイルして、異なるバージョンのライブラリにリンクできます。

これは正しいですか、正しくない場合は、なぜですか?

9
IvanB

はい、あなたは完全に正しいです。アプリケーションにオブジェクトファイルを提供するだけで、LGPLを満たすことができます。これにより、ユーザーは、LGPLで作成されたライブラリを他のバージョンに置き換えることができます。

FSFはFAQでそのように明言しています

LGPL(現在のバージョン:v2、v2.1またはv3)に準拠するため:

(1)LGPL化されたライブラリに対して静的にリンクする場合は、アプリケーションをオブジェクト(必ずしもソースではない)形式で提供する必要があります。ユーザーはライブラリを変更してアプリケーションを再リンクする機会があります。

(2)ユーザーのコンピューターに既に存在するLGPLのライブラリーに対して動的にリンクする場合、ライブラリーのソースを伝える必要はありません。一方、アプリケーションと一緒に実行可能なLGPL化されたライブラリを、静的または動的にリンクされているかどうかに関係なく伝達する場合は、LGPLが提供する方法の1つでライブラリのソースも伝達する必要があります。

6
Ixrec