公開日:2010/1/4 0:00:00

FLARToolKit

FLARToolKit License

FLARToolKitとFLARManagerはGPLで公開されています。
それらを用いてコンテンツを製作した場合、営利・非営利を問わずGPLの各項目に従うことが要求されます。

ここではFLARToolKit、FLARManagerを用いたコンテンツをGPLで公開する場合に行う作業を簡単にまとめています。

GPL(GNU General Public License)とは

GPLについて詳細に知りたい場合は原典をあたるのが良いのですが、法律系英文は……という方向けにIPAがまとめていたりします。

[GNU General Public License](http://www.gnu.org/licenses/gpl.html)
原典(http://www.gnu.org/licenses/gpl.html)
[ソフトウェアライセンシングとIPR関連情報](http://ossipedia.ipa.go.jp/legalinfo/)
日本語訳や解説(http://ossipedia.ipa.go.jp/legalinfo/)

Freeという言葉を、無料と翻訳してしまうことが多いのですが、GPLでのFreeとは無料ではなく、自由という意味です。 そのため、無償で配布しなければならない訳ではありません。(GPL 前文 第三パラグラフ内)
とはいえ、有償で手に入れた人がGPLの「身近な人を助けられるよう、コピーを再配付する自由」に従って無償で配布できてしまうので、 そうすることの価値がないというのが基本見解です。
追加条項で必ず有償で再配布するというのはできないところも落とし穴かも。

さて、その辺りを踏まえたうえで、簡単に準拠するための方法をまとめます。

概要

準拠するために必要な行為は以下になります。

  1. ソースコードのコメント
  2. ライセンス文の作成
  3. 使ったライブラリのファイル一式
  4. ソースコードの取りまとめ
  5. 公開ページへの記載

もっとも文句が出ない方法で一つずつ説明します。

ソースコードのコメント

GPLのライセンス表記をソースコード中に加えます。 FLARManagerのコメントをパクリつつ、下記をテンプレートに改変したソースコードのヘッダコメントにします。

/**
 * <kbd>ここにアプリケーションかコンテンツ名</kbd>
 * 
 * Copyright (c) 2009 <kbd>名前か会社名、グループ名など</kbd>
 * 
 * This work complements FLARToolkit, developed by Saqoosha as part of the Libspark project.
 *     https://github.com/Saqoosha/FLARToolKit
 * FLARToolKit is Copyright (C)2008 Saqoosha,
 * and is ported from NyARToolKit, which is ported from ARToolKit.
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

FLARToolKitに含まれるcoreのコードを修正した場合は、ヘッダコメントの一番下に修正点の概略と名前を追加。

 * 
 * History
 * YYYY/mm/dd <kbd>名前とか</kbd>
 *  - 修正箇所とかの概略
 */

本当はもうちょっといろいろ書かないと……っぽいけれど、まぁ、これを書いておけばまずは問題無いかと。

この辺りは、「第5条 修正されたソースコードの配布」の辺りに記載されていること。

ライセンス文の作成

配布するファイル中(zipなどの圧縮ファイル)には、COPYING.txtとREADME.txtを入れます。

README.txtは、下記をテンプレートにすると簡単。

アプリケーションまたはコンテンツ名

公開日 

名前か会社名、グループ名など

このプログラムはGPL (General Public License)でライセンスされています。
ライセンスの内容は、COPYING.txtをご確認ください。

コンテンツの説明とか、コンパイル方法などの説明があれば書く。

[利用ライブラリ]
Papervision3D バージョン - MIT License
http://code.google.com/p/papervision3d/

FLARToolkit - GNU General Public License
 Author: Saqoosha
 https://github.com/Saqoosha/FLARToolKit

他にあればライブラリ名とバージョン、作者、ライセンス名、入手先を記載

簡単ですが、まぁ、こんなところでしょう。

使ったライブラリのファイル一式

利用ライブラリに記載したライブラリのソースコードを確保してください。
FLARManagerはswcにしているんですが、ソースコードをダウンロードした人から要求があった場合、 自分が書いたもの以外の利用したライブラリも渡すことができなければなりません。
渡せなくとも入手方法を明記する必要があります。

この辺りは、「第4条 忠実な副生物の配布」の絡みからです。

ソースコードの取りまとめ

ここまで準備ができたら公開するファイルを取りまとめてzipで圧縮します。

公開するファイルには、必ずコンパイルできるようにまとめます。 自分が書いたコードのみを公開する場合は、README.txtにコンパイル手順を記載してください。 コンパイルし実行できなければならないので、マーカーのPDFまたは画像ファイル、3Dモデルのデータも含めます。

この辺りは、「第5条 修正されたソースコードの配布」の辺りに記載されていること。

公開ページへの記載

コンテンツを表示しているページにGPLを適応していることを明記し、 ソースコードの入手方法についての説明を記載することが求められています。

最も簡単なのは、コンテンツページのどこかにソースコードのダウンロードリンクをつけること。 もう一つは簡単な一文をつけて、リンク先に入手方法について説明または、ダウンロードできるようにすること。

問い合わせ対応を考えると、ウェブからダウンロード出来るようにしたほうが簡単かと。 配布方法については「第6条」の辺りも参考にしつつ対応してください。

まとめ

簡単にまとめたので手落ちがあるかもしれませんが、ご了承ください。
意見などありましたら連絡をいただければと思います。