2008-01-26

libstdc++を使って作られたプログラムはGPLか

libstdc++は、gccのSTLの実装のことである。これは、GPLライセンスだ。しかし、STLは、その名が示すとおり、テンプレートライブラリであって、ソースコードの形で使わなければならない。したがって、gccで作られたプログラムは、GPLライセンスを継承しなくてはならないのだろうか。

 gccは優れたコンパイラであり、何よりフリーだ。フリーなライセンスとして、GPLがすばらしいことjも確かだ。しかし、gccで生成されたプログラムが、皆GPLになってしまうというのでは、誰も使わないだろう。コンパイラが生成したプログラムまでGPLになるというのは、GPLなテキストエディタで作成したテキストファイルがGPLに感染するようなものだ。

 幸いなことに、どうやらlibstdc++は、特別に、GPLに加えてruntime exceptionという条項があるらしい。

http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/license.html

 しかし、それって別にGPLである必要がないような。libstdc++に改変を加えて使用した場合も、このruntime exception条項は適用できるのだろうか。

No comments: