Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (4,208)  
HandBrake Japanese Language Version  (3,353)  
CrystalDiskInfo  (1,743)  
CotEditor  (1,120)  
CrystalDiskMark  (866)  
Boookends  (788)  
SMPlayer  (642)  
えこでこツール  (599)  
Tera Term  (595)  
10  FFFTP  (579)  
11  Cabos  (530)  
12  BathyScaphe  (494)  
13  ffdshow  (481)  
14  MergeDoc  (464)  
15  ギコナビ  (438)  
More >>

最近ブックマークされた記事

FSFによるLGPL新規ドラフトのリリース

2007年04月06日 10:06 Bruce-Byfield(2007年4月4日(水))
 Free Software Foundationから先日、GNU Lesser General Public License(LGPL)第3版の第2ドラフトがリリースされた。今回の新規ドラフトでは全体的な改訂が施された他、LGPLとGPL(GNU General Public License)との連携の強化、新たな“linked version”(リンクされたバージョン)という概念の導入、結合著作物(combined work)の頒布に関する条件の追加が行われている。

 そもそもLGPLは、フリーソフトウェアとプロプライエタリ系ソフトウェアとの橋渡しをするために制定されたものである。同ライセンスで主として想定されているのはプログラミングライブラリであり、フリーソフトウェアおよびプロプライエタリ系アプリケーション双方でのライブラリ利用を可能にすることをその目的としている。こうした本来の目的に則すならば、同ライセンスの条項はライブラリにのみ適用されるべきものであって、これらにリンクしたソフトウェアは対象外となるはずである。ただし実際には、OpenOffice.orgなどのアプリケーションをデュアルライセンス下で提供する際にもLGPLは利用されている。LGPLは1991年に制定され、最後に改訂されたのは1999年のことである。

 従来のLGPLの文言もGPLの内容を踏襲した内容とはなっていたが、両者はあくまで個別のライセンスという立場を堅持していた。そうした関係に変化を生じさせるきっかけとなったのが、GPL第3版(GPLv3)における第2ドラフトのリリースである。Eben Moglen氏の説明によると、2006年7月にGPLv3の第2ドラフトがリリースされた際に、その作成に携わった法務の専門家がGPL適用下でのソフトウェアの頒布に関する許可および要件を規定したセクションを改訂していることに気づき、それと同じセクションを取り入れることで、これら2つのライセンスの関係を簡明化できると判断したとされている。これによりLGPLとGPLは相互に独立したライセンスという形態を脱し、LGPLはGPLにおける例外事項の1つという立場に置かれ、その結果同ライセンスの大幅な簡明化が果たせたという訳である。

 「要は内容を整理しただけです」とMoglen氏は語る。「LGPLの本質に変更はありません。文言としての簡明化を施しただけであって、ライセンスを使用する際の実務面では何も変わっていない点を理解して頂く必要があると考えております」

 また先週Free Software Foundationの創設者であるRichard Stallman氏は、同様の手法を用いてGPLとAffero GPLの関係も整理と簡明化をすることになるだろうと発言している。

 こうした方針に基づいて作成されたLGPLの新規ドラフトには、GPLv3との緊密化を図るための変更が多く施されている。例えばこの草案では“conveying”というGPLv3で採用された“複製および頒布”を示す表現が新たに取り入れられているが、これは文言を簡単化するという以外にも、用語の意味を誤解される可能性を低めて法体系の異なるアメリカ国外での利用を促進させるための配慮も兼ねた措置である。その他にも「minimal corresponding source」(該当する最小限のソース)や「corresponding object code」(該当するオブジェクトコード)といった表現を用いることで、よりいっそうの明確化が図られている。

 特に今回の新規ドラフトの冒頭ではLGPLについて「incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below」(GNU General Public License第3版で用いられた用語や条項との一体化を図り、下記に一覧したその他の許可要件を追加したもの)と説明している。またこの草案では、GPLにおける特定のセクションを参照するように誘導されている箇所が散見される。つまり、今後はLGPLを使用するための前提としてGPLを理解しておくことが不可欠になったということである。

 2つのライセンスの新たな関係を最も端的に示しているのはLGPLの第1セクションであり、そこにはGPLとLGPLとの相違点、つまりはGPLにおける例外事項が説明されている。GPLv3側の第2パラグラフの第3セクションでは、同ライセンスで許可される、複製、改変、再頒布などの権利に関し、第三者によるそうした権利の行使を妨害する技術的な措置を施すことを禁じているのだが、LGPLの第1セクションでは、LGPLを利用する場合にそうした規制は適用されないことを宣言しているのだ。そもそもLGPLというライセンスは、プロプライエタリ系プログラムとの橋渡しを目的に定められたものであり、こうした例外を設けることは理にかなっている。

 その他に同ドラフトについて特記しておくべきことは“linked version”(リンクされたバージョン)という概念の導入である。新たなLGPLでは「that makes use of an interface provided by the Library, but which is not otherwise based on the Library」(ライブラリの提供するインタフェースを利用するが、それ以外の形態で当該ライブラリをベースにしたものではないもの)として定義される“アプリケーション”(application)に、ライブラリというクラスの新たなサブクラスを含めることで、“結合著作物”(combined work)を「a work containing portions of the Library, produced by combining or linking an Application with the Library」(ライブラリの一部を使用したもので、アプリケーションとライブラリをリンクないし組み合わせることで作成されたもの)と区別するようにしている。つまり、新たな概念を示す用語をいくつか導入する必要はあったが、その見返りとして結合著作物の作成に用いられるライブラリに関する同ライセンスでの定義が簡明化され、これをライブラリの“linked version”と呼ぶようにした訳である。

 こうした変更による影響を最も大きく受けるのがLGPLの第4セクションであり、ここでは先の“conveying”に相当する行為を結合著作物で行う際に、どのようなライセンスが適用されるかが定められている。つまり本ライセンスが適用される結合著作物に対する“conveying”については、「do not restrict modification of the portions of the Library contained in the Combined Work and reverse engineering for debugging such modifications」(結合著作物に含まれるライブラリの一部に対する改変および、そうした改変に関するデバッグ目的のリバースエンジニアリングを禁じてはならない)という条件を前提に「terms of your choice」(各自の判断)で行うものとし、その際には同セクションの他の条項に従うもの、とされているのである。ここでいう他の条項には、本ライセンスが適用されている旨の説明および適用範囲についての“prominent notice”(はっきりとした告知)をすることが挙げられており、また結合著作物におけるGPLの条文の同梱や、使用したライブラリに関するすべての著作権表示を行うことも謳われている。

 また従来のライセンスでは結合著作物の“conveying”に関して、最小限の関連するソースおよびアプリケーションを同梱するか、あるいは「a suitable shared library mechanism for linking with the Library」(『ライブラリ』とのリンクに適切な共有ライブラリ機構を用いる)という選択肢が与えられていた。この適切な機構というのは、既にシステムにインストール済みのもので「will operate properly with a modified version of the Library」(修正版のライブラリでも適切に動作するようになっているもの)と定められている。

 そして今回のLGPL草案では、これらの選択肢に加える形で第3の要件が追加されている。それは“conveying”の対象をオブジェクトコードのみとする場合のもので、その際にはGPLv3の第6セクションの規約に従って 「installation information」(インストレーション情報)を含める必要があるとされたのだ。ここでいう「Installation information」とは「any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source」(当該ソースの改変版を基にした著作物について、その改変版のインストールおよび実行に必要となる、手法、手順、認証キーおよびその他の情報)とGPLで定義されており、これは主としてフリーソフトウェアの利用を禁止する可能性のある規制テクノロジを防止するための措置として導入されたものである。こうした選択肢の追加によりLGPLは最新版のGPLv3草案との整合性を確保した訳であるが、これは同時に双方のライセンスがいかに密接な関係にあるかを如実に物語っているとも言えるだろう。

 GPLv3で提案されている変更と同様、実用面から見た今回のLGPLにおける修正は、前回の改訂以降に出現した新規のテクノロジや問題点への対処に主眼が置かれている。ただしGPLに付随するLGPLという立ち位置が明確化されたため、そうした関係が定着し終わるまでには、古くから同ライセンスを使用してきた人々の間で、ある程度の混乱が引き起こされる可能性が高い。もっとも長期的な視点から見れば、これら両ライセンスの関係を再定義したことは、LGPLの簡明化をもたらし、その解釈と利用を行いやすくした英断であったと証明されることになるだろう。

Bruce Byfieldは、コンピュータジャーナリストとして活躍しており、NewsForge、Linux.com、IT Manager's Journalに定期的に寄稿している。

NewsForge.com 原文

最終更新:2007年07月01日 19:05