# 2. Unix プラットフォームで Python を使う

## 2.1. 最新バージョンの Python の取得とインストール

### 2.1.1. Linux

ほとんどの Linux ディストリビューションでは Python はプリインストールされており、それ以外でもパッケージとして利用可能です。しかし、ディストリビューションのパッケージでは利用したい機能が使えない場合があります。最新版の Python をソースから簡単にコンパイルすることができます。

Python がプリインストールされておらず、リポジトリにも無い場合、ディストリビューション用のパッケージを簡単につくることができます。以下のリンクを参照してください:

参考

https://www.debian.org/doc/manuals/maint-guide/first.en.html

  Debian ユーザー向け

https://en.opensuse.org/Portal:Packaging

  OpenSuse ユーザー向け

https://docs-old.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-creating-rpms.html

  Fedora ユーザー向け

http://www.slackbook.org/html/package-management-making-packages.html

  Slackware ユーザー向け

### 2.1.2. FreeBSD と OpenBSD

- FreeBSD ユーザーが Python パッケージを追加するには次のようにしてください:

      pkg install python3

- OpenBSD ユーザーが Python パッケージを追加するには次のようにしてください:

      pkg_add -r python

      pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/<insert your architecture here>/python-<version>.tgz

  例えば、i386 ユーザーが Python 2.5.1 を取得するには次のようにします:

      pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2.tgz

### 2.1.3. OpenSolaris

OpenCSW から Python を入手することができます。 Python の様々なバージョンが利用可能でインストールすることができます。e.g. `pkgutil -i python27`.

## 2.2. Python のビルド

CPython を自分でコンパイルしたい場合は、まず ソース を入手します。 最新リリース版のソースをダウンロード、あるいはソースリポジトリから新しく クローン を作成してください。(パッチの作成に貢献したい場合はクローンが必要になるでしょう。)

ビルド手順は通常のコマンドで行います

    ./configure
    make
    make install

Configure のオプションや特定の Unix プラットフォームにおける注意点は Python ソースツリーのルートにある README.rst に細かく記載されています。

警告

`make install` は `python3` バイナリを上書きまたはリンクを破壊してしまうかもしれません。そのため、`make install` の代わりに `exec_prefix/bin/pythonversion` のみインストールする `make altinstall` が推奨されています。

## 2.3. Python に関係するパスとファイル

これらはローカルインストールの慣例に応じて変化します; `prefix` (`${prefix}`) と `exec_prefix` (`${exec_prefix}`) はインストール状況に依存していて、GNU ソフトウェアによって解釈されます; この二つは同じである場合があります。

例えば、ほとんどの Linux システムでは、両方のデフォルトが `/usr` です。

ファイル/ディレクトリ | 意味
--- | ---
`exec_prefix/bin/python3` | インタプリタの推奨される場所
`prefix/lib/pythonversion`, `exec_prefix/lib/pythonversion` | 標準モジュールを格納するディレクトリの、推奨される場所。
`prefix/include/pythonversion`, `exec_prefix/include/pythonversion` | Python 拡張や Python の埋込みに必要となる include ファイルを格納するディレクトリの推奨される場所。

## 2.4. その他

Python スクリプトを Unix で簡単に使うためには、例えば次のようにしてスクリプトを実行可能ファイルにし、

    $ chmod +x script

適切な shebang 行をスクリプトの先頭に置きます。たいていの場合良い方法は

    #!/usr/bin/env python3

で、`PATH` 全体から Python インタープリターを探します。しかし、いくつかの Unix は env コマンドを持たないので、インタープリターのパスを `/usr/bin/python3` のようにハードコードしなければならないかもしれません。

シェルコマンドを Python スクリプトから使うには、 `subprocess` モジュールを参照してください。