プログラミング: 2008年3月アーカイブ

さて、現在ARToolKitのソースの公開に向けた準備を進めている最中ですが、
そこで避けては通れない問題があります。

GNU General Public License(以下GPL)の問題です。(wikipediaのGPL解説ページ



----- <GPLの大まかな説明> -----

ARToolKitのソースのライセンスは、このGPLになっています。
ここでは、GPLについて簡単な説明しかしないので、詳細については他のHPを参照ください。
また、"説明が間違っている"、とか"説明が足りない"部分もあるかもしれません。ご注意ください。

ということで、GPLを(誤解を恐れず簡単に)説明すると、以下のような内容になります。

「GPL付きのプログラムを変更し、再配布する場合は、必ず変更したソースコードも一緒に配布しなくていけない」



GPLでは、入手したプログラムを個人や社内"のみ"で使用している場合には、何の制限もありません。
また、プログラムを使用して書き出された出力結果についても、ほとんどの場合扱いは自由です。

しかし、その実行ファイルやソースを配布しようとした時には、いくつかの制限がつきます。
その1つが、改変したソースコードも必ず、全て公開しなくてはいけない、というものです。

もし、それらの制限が守れないのであれば、実行ファイルやソースの配布は絶対にできません。


ですが実際に、これらの制限をちゃんと守っている人がどれくらいいるのかは、ちょっと怪しいところです。
企業であれば、GPL違反は"ソースの公開又は配布の停止"という非常に重い罰則になるので、どこもGPLには気をつけているはずです。

しかし、個人で公開しているフリーウェア等の場合、"ソースの公開又は配布の停止だけ"という罰則は非常に軽いです。
しかも、ARToolKitのようなプログラムならまだしも、そのアプリがGPL違反かどうかなんて、実行ファイルだけでは普通分かりません。




という背景はありますが、僕自身は「規則だから」という問題は抜きにしても、GPLをちゃんと守ってソースを公開したいと思います。(まぁ理由は後で

さて長くなりましたが、では実際にARToolKitで作ったプログラムを公開する際に、注意すべきことを書いてみます。



----- <ARToolKitのGPLで、問題になるのは?> -----

・僕がARToolKitのプログラムをダウンロードし、プログラムを変更する 
→ ○問題ない
 公開しなければ、何も問題ありません。

・改変したプログラムを実行、その出力結果をWebに公開する 
→ △内容にもよるが、概ね問題ない
 実行結果で、ソース自体を出力しないのであれば、問題ありません。
 実行結果のみなら、動画を公開しても大丈夫です。

・もし、このプログラムの実行ファイルのみを、Webに公開したら 
→ ×GPL違反
 ソースの公開等の制限を実行するか、その旨の文章を入れないといけない。

・ARToolKitで使われている画像(マーカーパターンなど)を改変、公開 
→ △場合によりけり
 画像データ等がプログラムの一部として判断されるかは微妙です。
 しかしそうだとしても、僕の場合は改変した画像も既に公開されているので、問題はないと思います。(ソースも必ず完全公開しますし



----- <GPLに違反したら?> -----

上にも書いたように、少なくてもARToolKit(GNU GPL Ver2)の場合は、
ライセンスに書かれている制限(「ソースコードを公開する」又は「配布を停止する」、など)以外の罰則はないようです。



----- <実際に配布時に行わなければいけないこと> -----

これに関しては、GPLの日本語訳が分かりやすいです。
重要そうな所を一部、ARToolKitの例で説明しますと。

●ARToolKitを元に作られたプログラムを配布する時は、その変更箇所を全て公開しなくてはいけない。

●その時に、変更した旨とその変更日とを、そのファイル上に書かなくてはいけない。

●プログラム実行時に著作権等の注意事項を出力する。

●GPLのライセンスが書かれたテキスト(COPYING.txt)を、配布ファイルの中にも入れておくこと。
等々があります。詳しくは、上記リンクを参照してください。



----- <GPLはなんのためにあるのか?> -----

といったように、少し面倒なGPLですが、これにはちゃんと理由があります。

GPLの目的とは、「フリーウェアが誰かの手によって独占的に保持されるのを防ぎ、
ソースを共有することによって、フリーウェアを発展させていきましょう」というものです。

この考え方は、クリエイティブ・コモンズにも似ていますね。
コピーレフトというものらしいです。

ということで、僕はARToolKitがもっと発展してほしいと思っているので、GPLを推奨します。



----- <最後に> -----

何度も書かれているように、なにぶん僕も勉強不足な面があるので、間違ってたり、説明足らずな部分があると思います。
なのでGPLについては、ここを信用しないよう、ご自身でちゃんと調べてください。

また、そういった点があった場合、コメント等に指摘をいただけるとありがたいです。
GPLに関する質問については、答えられないかもしれないです。申し訳ないです。

このアーカイブについて

このページには、2008年3月以降に書かれたブログ記事のうちプログラミングカテゴリに属しているものが含まれています。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

プログラミング: 2008年3月: 月別アーカイブ

Powered by Movable Type 4.01a