Python の広範な標準ライブラリは、プログラミングにおける多くの 要求をカバーしていますが、時には何らかの新たな機能をサードパーティ製 モジュールの形で追加する必要に迫られます。 自分がプログラムを書くときのサポートとして必要な場合もあるし、 自分が使いたいアプリケーションがたまたま Python で書かれていて、 そのサポートとして必要な場合もあるでしょう。
以前は、すでにインストール済みの Python に対して、サードパーティ製 モジュールを追加するためのサポートはほとんどありませんでした。 しかしPython 配布ユーティリティ (Python Distribution Utilities, 略して Distutils) が Python 2.0 から取り入れられ、状況は変わりました。
このドキュメントが主要な対象としているのは、サードパーティモジュール をインストールする必要がある人たち: 単に何らかの Python アプリケーション を稼動させたいだけのエンドユーザやシステム管理者、そしてすでに Python プログラマであって、新たな道具を自分のツールキットに加えたい と思っている人たちです。このドキュメントを読むために、 Python に ついて知っておく必要はありません; インストールしたモジュールを 調べるために Python の対話モードにちょっとだけ手を出す必要が ありますが、それだけです。自作の Python モジュールを他人が使える ようにするために配布する方法を探しているのなら、 Python モジュールの配布 マニュアルを 参照してください。
最も楽なのは、インストールしたいモジュール配布物の特殊なバージョンを インストールしたいプラットフォーム向けに誰かがすでに用意してくれていて、 他のアプリケーションと同じようにインストールするだけであるような場合です。 例えば Windows ユーザ向けには実行可能形式のインストーラ、 RPM ベースの Linux システム (Red Hat, SuSE, Mandrake その他多数) 向けには RPM パッケージ、 Debian ベースの Linux システム向けには Debian パッケージといった具合に、モジュール開発者はビルド済み 配布物を作成しているかもしれません。
このような場合、自分のプラットフォームに合ったインストーラをダウンロード
して、実行可能形式なら実行し、RPM なら rpm --install
するといった、
分かりきった作業をするだけです。
Python を起動したり、 setup スクリプトを実行する必要はなく、
何もコンパイルする必要はありません -- 説明書きを読む必要すら
全くないかもしれません (とはいえ、説明書きを読むのはよいことですが)。
もちろん、いつもこう簡単とは限りません。自分のプラットフォーム向けの お手軽なインストーラがないモジュール配布物に興味を持つこともあるでしょう。 そんな場合には、モジュールの作者やメンテナがリリースしている ソース配布物から作業をはじめねばなりません。 ソース配布物からのインストールは、モジュールが標準的な方法でパッケージ 化されている限りさほど大変ではありません。このドキュメントの大部分は、 標準的なソース配布物からのビルドとインストールに関するものです。
モジュールのソースコード配布物をダウンロードしたら、配布物が 標準のやり方、すなわち Distutils のやり方に従ってパッケージされて 配布されているかどうかすぐに分かります。Distutils の場合、まず配布物の 名前とバージョン番号が、例えば foo-1.0.tar.gz や widget-0.9.7.zip のように、ダウンロードされたアーカイブファイルの 名前にはっきりと反映されます。次に、アーカイブは同様の名前の ディレクトリ、例えば foo-1.0 や widget-0.9.7 に展開されます。 さらに、配布物には setup スクリプト setup.py が入っています。 また、README.txt 場合によっては README という名前の ファイルも入っていて、そこには、モジュール配布物の構築とインストールは 簡単で、
python setup.py install
上記の全てが当てはまるなら、ダウンロードしたものをビルドして インストールする方法はすでに知っていることになります: 上記のコマンドを 実行するだけです。 非標準の方法でインストールを行ったり、ビルドプロセスをカスタマイズ 行いたいのでない限り、このマニュアルは必要ありません。 別の言葉で言えば、上のコマンドこそが、このマニュアルから習得すべき 全てということになります。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。