※本記事を読む前にpyenvが必要かどうかフローチャート - Qiitaを参照することをおすすめします。
pyenvについてまとめたいと思います。
#pyenvとは
Linuxにおいて、Pythonの実行環境を管理するツールです(例えば、2.x系と3.x系を使い分ける、といった用途が想定されるかと思います)。
#インストール
##pyenv
- anyenvまとめ - Qiitaに従って、anyenvをインストールします。
- Ubuntuの場合、以下のコマンドを実行し、Pythonの実行環境をインストールするのに必要なパッケージや実行環境のダウンロードを高速化させるパッケージをインストールします。
$ sudo apt install curl llvm sqlite3 libssl-dev libbz2-dev libreadline-dev libsqlite3-dev libncurses5-dev libncursesw5-dev python-tk python3-tk tk-dev aria2
- 以下のコマンドを実行し、pyenvをインストールします。
$ anyenv install pyenv
- 以下のコマンドを実行し、pyenvのコマンドを有効にします。
$ source ~/.bashrc
##pyenv-virtualenv
ある実行環境を元に複数の実行環境を生成したい場合に使うプラグインです。
- 以下のコマンドを実行し、pyenv-virtualenvをインストールします。
$ git clone https://github.com/yyuu/pyenv-virtualenv $(pyenv root)/plugins/pyenv-virtualenv
##pyenv-ccache
ccashe (詳しくはccacheでC/C++のコンパイルを高速化する - Qiitaを参照) を使うことで、CPython (公式によるPython実装) のインストールの高速化を図るプラグインです。
- ccasheをインストールします (Ubuntuの場合、以下のコマンドを実行します)。
$ sudo apt install ccache
- 以下のコマンドを実行し、pyenv-ccacheをインストールします。
$ git clone https://github.com/yyuu/pyenv-ccache $(pyenv root)/plugins/pyenv-ccache
##pyenv-pip-update
pipやcondaで管理されているライブラリのアップデートを簡単に行えるようにするプラグインです。
- 以下のコマンドを実行し、pyenv-pip-updateをインストールします。
$ git clone https://github.com/massongit/pyenv-pip-update $(pyenv root)/plugins/pyenv-pip-update
#コマンド
コマンド | 内容 |
---|---|
$ pyenv |
ヘルプ |
$ pyenv root |
pyenvのインストール先の絶対パス |
$ pyenv shell |
シェルにおける実行環境 |
$ pyenv shell 実行環境名 |
シェルにおける実行環境の設定 |
$ pyenv global |
デフォルトの実行環境 |
$ pyenv global 実行環境名 |
デフォルトの実行環境の設定 |
$ pyenv install 実行環境名 |
指定された実行環境のインストール |
$ pyenv uninstall 実行環境名 |
指定された実行環境のアンインストール |
$ pyenv pip-update |
pipやcondaで管理されているライブラリのアップデート (pyenv-pip-update) ※condaを使用する実行環境 (anacondaやminiconda) については、condaで管理されているライブラリのみアップデート |
$ pyenv virtualenv 実行環境(A)名 実行環境(B)名 |
pyenv install でインストールされた実行環境(A)を元に実行環境(B)を生成する (pyenv-virtualenv) |
$ pyenv versions |
インストールされている実行環境一覧 |
※anyenvにanyenv-updateをインストールしてある場合、pyenv本体やプラグインのアップデートはanyenvのアップデートの一部として行うことができる | |
※pipを行うときにroot権限で実行しないようにする |
#参考文献