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.fedoraproject.org/en-US/package-maintainers/Packaging_Tutorial_GNU_Hello/
Fedora ユーザー向け
- https://slackbook.org/html/package-management-making-packages.html
Slackware ユーザー向け
2.1.1.1. IDLE のインストール¶
場合によっては、 IDLE は Python インストールに含まれていない可能性があります。
Debian と Ubuntu ユーザー:
sudo apt update sudo apt install idle
Fedora や RHEL 、 CentOS ユーザーは:
sudo dnf install python3-idle
SUSE と OpenSUSE ユーザーは:
sudo zypper install python3-idle
Alpine Linux ユーザーは:
sudo apk add python3-idle
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/<ここにアーキテクチャを挿入>/python-<バージョン>.tgz
例えば、i386 ユーザーが Python 2.5.1 を取得するには次のようにします:
pkg_add ftp://ftp.openbsd.org/pub/OpenBSD/4.2/packages/i386/python-2.5.1p2.tgz
2.2. Python のビルド¶
参考
CPython に貢献したい場合は、ビルド手順や環境設定のヒントを掲載した 開発者ガイド を参照してください。
CPython を自分でコンパイルする場合は、まず ソース を入手してください。 最新リリースのソースをダウンロードするか、最新の クローン を取得できます。 ビルドに必要なもの もインストールする必要があります。
ビルド手順は通常のコマンドで行います
./configure
make
make install
Configure のオプション や特定の Unix プラットフォームにおける注意点は Python ソースツリーのルートにある README.rst に細かく記載されています。
警告
make install は python3 バイナリを上書きしたり、既存のバイナリに代わって使われるようにしたりする可能性があります。
そのため、make install の代わりに、exec_prefix/bin/pythonversion のみをインストールする make altinstall を推奨します。
2.4. その他¶
Python スクリプトを Unix で簡単に使うためには、例えば次のようにしてスクリプトを実行可能ファイルにし、
$ chmod +x script
適切な shebang 行をスクリプトの先頭に置きます。たいていの場合良い方法は
#!/usr/bin/env python3
で、PATH 全体から Python インタープリターを探します。しかし、いくつかの Unix は env コマンドを持たないので、インタープリターのパスを /usr/bin/python3 のようにハードコードしなければならないかもしれません。
シェルコマンドを Python スクリプトから使うには、 subprocess モジュールを参照してください。
2.5. カスタムの OpenSSL¶
ベンダーの OpenSSL 設定とシステムの信頼ストアを使用するには、
/etc内でopenssl.cnfファイルまたはそのシンボリックリンクを含むディレクトリを探してください。 ほとんどのディストリビューションでは、ファイルは/etc/sslまたは/etc/pki/tlsにあります。 そのディレクトリにはcert.pemファイル、certsディレクトリ、またはその両方もあるはずです。$ find /etc/ -name openssl.cnf -printf "%h\n" /etc/ssl
OpenSSL をダウンロードし、ビルドしてインストールします。
installではなく、必ずinstall_swを使用してください。install_swターゲットはopenssl.cnfを上書きしません。$ curl -O https://www.openssl.org/source/openssl-VERSION.tar.gz $ tar xzf openssl-VERSION $ pushd openssl-VERSION $ ./config \ --prefix=/usr/local/custom-openssl \ --libdir=lib \ --openssldir=/etc/ssl $ make -j1 depend $ make -j8 $ make install_sw $ popd
カスタムの OpenSSL を使って Python をビルドします (configure の
--with-opensslおよび--with-openssl-rpathオプションを参照してください)$ pushd python-3.x.x $ ./configure -C \ --with-openssl=/usr/local/custom-openssl \ --with-openssl-rpath=auto \ --prefix=/usr/local/python-3.x.x $ make -j8 $ make altinstall
注釈
OpenSSL のパッチリリースでは、ABI の後方互換性が保たれます。 OpenSSL を更新するために Python を再コンパイルする必要はありません。 インストール済みのカスタム OpenSSL を新しいバージョンで置き換えるだけで十分です。