らくがきちょう

なんとなく

CentOS 7.5 に pyenv をインストールし、任意バージョンの Python を利用する

Python のバージョンを切り替えられる pyenv を CentOS 7.5 へインストールした際の手順をメモしておきます。

必要なパッケージのインストール

まず、必要なパッケージをインストールしておきます。

yum -y install \
  bzip2 \
  bzip2-devel \
  gcc \
  git \
  openssl \
  openssl-devel \
  readline \
  readline-devel \
  sqlite \
  sqlite-devel \
  zlib-devel

pyenv のインストール

pyenv はインストーラが用意されているので、インストールは簡単です。 下記を実行するだけでインストールが完了するはずです。

curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash

環境変数の追加

シェル起動時に pyenv が使えるようにする為、環境変数を追加しておきます。

cat << 'EOS' >> ~/.bashrc
export PATH="/root/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
EOS

シェルを立ち上げなおすか、または source環境変数の追加を反映します。

source ~/.bashrc

これで pyenv を使う用意が出来ました。 今回は pyenv 1.2.8 がインストールされました。

# which pyenv
/root/.pyenv/bin/pyenv
# pyenv --version
pyenv 1.2.8

インストール可能な Python バージョンを確認する

pyenv を使ってインストール可能な Python バージョンは pyenv install --list で確認出来ます。

pyenv install --list

利用中の Python を確認する

現在、利用中の Python を確認するには pyenv global を実行します。 まだ pyenv 経由で Python をインストールしていない為、system(システム)デフォルトの Python が使われていることが分かります。

# pyenv global
system

pyenv で指定バージョンの Python をインストールする

pyenv で指定バージョンの Python をインストールするには pyenv install VERSOIN を実行します。 今回は Python 2.7.15 をインストールしてみます。

pyenv install 2.7.15

しばらく時間がかかりますが、これで指定したバージョンの Python がインストールされるはずです。

Python のバージョンを切り替える

インストールした Python が利用されるように設定変更します。 pyenv global VERSION を指定すると、指定した Python が使われるように切り替わります。 Python を切り替えたら Rehash (情報更新) しておきます。

pyenv global 2.7.15
pyenv rehash

これで Python が切り替わりました。

# python --version
Python 2.7.15