web-dev-qa-db-ja.com

LGPLライブラリのクローズドソースプラグインを作成できますか?

プログラムをLGPLライブラリ(ここではGTK +/GLib)に動的にリンクすると、自分の条件でプログラムを配布できます(コピーレフトではありません)。

現在、LGPLライブラリはロード可能なモジュールを提供しています。共有ライブラリ(.so、.dll、.dylib)を特定のディレクトリに配置すると、明確に定義されたインターフェイスを使用して、共有ライブラリの読み込みが試行されます。 LGPLの条件に従って、プラグインモジュール(LGPLライブラリによって動的にロードされる)をクローズドソースとして配布することは許可されていますか?

プラグインでLGPLedライブラリのコードを使用せず、ライセンスで許可され、クローズドソースプログラムでも使用できるヘッダーのみをインクルードするように注意します( "3。ライブラリヘッダーファイルからのマテリアルを組み込んだオブジェクトコード。 ")。


免責事項:
インターネット上の見知らぬ人から法的なアドバイスを受けるべきではないことを私はよく知っています。私は主に興味があるのでこれを求めています。この時点では、コードは作成されておらず、ビジネス上のコミットメントもありません。私が実際に何かをする前に、私はおそらく弁護士に尋ねるべきです(しかし、彼らはあなたの好奇心を満たすためだけにかなり高価です!)。私は良い答えを得ることができると確信しています-多分誰かがまさにこのことをして、彼らの経験について報告することができます。たぶん、私が見落としていた馬の口(FSF)からの明確な答えがあります。私はあなたがそうする必要がないようにこの免責事項を書いているので、私の法務部門(私は個人として持っていません)に尋ねるように私に言わないでください。

そして、これがProgrammers.SEに属している場合は、遠慮なく移動してください。重要な技術的(リンク)の問題があるかもしれないので、ここに投稿しました。

3
jdm

プログラムをLGPLライブラリ(ここではGTK +/GLib)に動的にリンクすると、プログラムを自分の条件で配布することができます(コピーレフトではありません)。

はい、いくつかの制限があります。特に、プロプライエタリプログラムを特定のバージョンのLGPLライブラリにロックすることはできません。 LGPLライブラリのアップグレードと変更を許可する必要があります。

LGPLの条件に従って、プラグインモジュール(LGPLライブラリによって動的にロードされる)をクローズドソースとして配布することは許可されていますか?

別の言い方をすれば、あなたの質問はLGPLとの逆リンクについてであり、LGPLコンポーネントに必要な記号を提供します。 LGPLはアプリケーションを次のように広く定義しているため、私の推測では、答えは実際にはyesです。

「アプリケーション」とは、ライブラリが提供するインターフェースを利用するが、それ以外はライブラリに基づいていない作品のことです。

したがって、独自仕様の。soは、ライブラリによって提供されるインターフェイスを利用するため、「アプリケーション」としての資格があり、リンク例外を利用できます。

1
DepressedDaniel