計算にR(GPL)を使用する商用パッケージを書いています。GPLよくある質問は明確にGPLのプログラミング言語の通訳が「プログラム」(Rコードのテキストファイル)にライセンス制限を課さないと述べています。ここまでは順調ですね。
パッケージの一部は、GPLも使用するRcppを使用してコンパイルされます。FAQの次の段落は次のとおりです。
ただし、インタープリターが他の機能(ライブラリーであることが多いが必ずしもそうではない)に「バインディング」を提供するように拡張されている場合、インタープリタープログラムは、これらのバインディングを通じて使用する機能に効果的にリンクされます。
RがRcppライブラリ(Rcpp.dll
windowsパッケージ内)へのバインディングを提供していると解釈できます。安全な仮定は、これが私のコードをGPLで汚すということですが、これは本当に正しい結論ですか?
私の不確実性の一部は、私のコードとの間のリンクの緊密さですRcpp.dll
。dllにはRcppへの参照がありますが、これらが開発環境への参照であるか、Rcppライブラリ内のシンボルへの呼び出しへの参照であるかを知るには十分な熟練度がありません。前者の場合は、RcppライブラリがライブラリではなくRによってリンクされていると思います。ただし、Rcppはコードの作成と実行を簡素化するための接着剤(実際には砂糖)を提供しているので、後者を疑っています。
コード配布には、GPLに関連する議論が無数にあります。いくつか例を挙げると:
注意:私は一般的にOSSの大きな支持者であり、過去に開発と配布に参加しました。「コードの保護」に関する質問は、しばしばオープンソースプログラマーのハックルを引き起こし、ソフトウェア哲学についての激しい議論をしばしば引き起こします。私は双方の価値を認めており、私がその書簡と(可能であれば)法律の精神を確実に満たすことを望んでいます。ライセンスの抜け穴を探すつもりはありません。私はそれを解釈してコンテキストに入れる助けを探しています。
GPLを使用するには、Rcppに依存するRパッケージが必要ですか?