TSUBOCK★LABO-ツボックラボ-

とあるセキュリティエンジニアの技術メモブログ

MENU

pyenvを使ってバージョン管理をする

使用しているWSLの環境で複数バージョンのPython3系での動作確認をするため、簡単にPythonのバージョンを切り替えられるPyenvをインストールしてみました。

pyenvとは

pyenvはPythonのバージョン管理を行なうコマンドラインツールで、複数のバージョンのPythonをインストールしたり切り替えを自由にできるツールです。早速インストールしていきたいと思います。

事前準備

必要なライブラリをインストールする

$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils

pyenv インストール

pyenvはGitHubリポジトリから取得してインストールします。

$ git clone git://github.com/yyuu/pyenv.git ~/.pyenv

インストール後、pyenvのPathを通して使用できるようにします。

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

.bash_profileを編集後、設定を反映させます。

$ source ~/.bash_profile

反映完了後、正しくpyenvがインストールできたかどうか確認するため、インストールしたバージョンの確認を行います。

$ pyenv -v
pyenv 1.2.21-6-g2bf6111f

上記のようにバージョンが表示されれば、Pathが正しく通っていて、使用できる状態になっているかと思います。

PyenvでインストールできるPythonバージョンの確認

それでは、インストールしたPyenvを使って、Pythonをインストールしてみる。まずはインストールできるPythonのバージョンを下記コマンドで確認します。

$ pyenv install --list

結構大量にバージョンがでてきます。。。

今回は自分のWSL環境が3.6.9なので、3.7.9をインストールしていきたいと思います。

Pyenvで任意のバージョンのPythonをインストールする

次にpyenvを使ってインストールしたいPythonバージョンを指定してインストールを行う。使用しているWSLのPythonバージョンが3.6.9なのでPython3.7.9をインストールしてみましょう

$ pyenv install 3.7.9

実行後、まずはpyenvでインストールができているか確認してみます。

pyenv versionsでpyenvを使ってインストールされたpythonのバージョン一覧を表示することができます。 ※pyenv versionではなくpyenv versionsです!最後のsが抜けると表示されないので注意!

$ pyenv versions
* system
  3.7.9 (set by /home/users/.pyenv/version)

Pythonバージョンの切り替え

pyenvでインストールしたpythonのバージョンに切り替えたいときはpyenv global [version]を実行することで、自由に切り替えることができる。

$ pyenv global 3.7.9
$ pyenv versions
  system
* 3.7.9 (set by /home/users/.pyenv/version)

pyenvがどのバージョンのpythonを設定しているかどうかは一覧の*がついているかどうかでわかる。

また、正しくpyenvのバージョンが反映されているかは通常のpython -Vで確認することができる。

$ python -V
Python 3.7.9

これでPython3.7.9を使用することができる。pyenv install --listでpypyなどもインストールできるので、今度はそちらも試してみたいと思う。

参照URL