表は,OSSのライセンスごとに,そのライセンスのOSSを利用したプログラムを配布するとき,ソースコードを公開しなければならないかどうかを示す。
a~dに入れるライセンスの適切な組合せはどれか。
ここで,表中の“○”は公開しなければならないことを表し,“×”は公開しなくてもよいことを表す。
表/配布プログラム|a|b|c|d/OSSのソースコードを修正して作ったプログラム|○|○|○|×/OSSに静的にリンクしたプログラム|○|○|×|×/OSSに動的にリンクしたプログラム|○|×|×|×
正答1
解説
正解は1です。
OSS(Open Source Software)ライセンスは、利用したプログラムを配布するときにソースコードの公開義務がどこまで及ぶかが異なります。
表では、aはすべての場合に公開、bは修正と静的リンクで公開、cは修正のときだけ公開、dはいずれも公開不要です。
【選択肢別解説】
1:○ GPL(GNU General Public License)は、修正したものもリンクしたものも公開を求めるのでaに当たります。
LGPL(GNU Lesser GPL)は、動的リンクなら公開不要なのでbです。
MPL(Mozilla Public License)は、修正したファイルだけ公開を求めるのでcです。
BSDライセンスは公開義務がないのでdです。
2:× bにMPLを当てていますが、MPLは修正したファイル単位で公開を求め、静的リンクしただけのプログラムには公開義務を課しません。
また、dにLGPLを当てていますが、LGPLは修正したプログラムの公開を求めるので、すべて×のdには当たりません。
3:× aにLGPLを当てていますが、LGPLは動的リンクしたプログラムには公開を求めないので、動的リンクも○のaには当たりません。
また、GPLは動的リンクしたプログラムにも公開を求めるので、動的リンクが×のbには当たりません。
4:× dにGPLを当てていますが、GPLは最も公開範囲が広いライセンスで、すべて×のdとは正反対です。
また、bのMPLとcのBSDも、それぞれ公開範囲が表と合いません。
【ポイント】
公開義務の範囲は、GPL>LGPL>MPL>BSD(公開義務なし)の順に狭くなります。
GPLのように派生物にも同じ条件を課す性質をコピーレフトといい、BSDやMITのようにコピーレフトがないものを非コピーレフト型といいます。