いまさらだけどUbuntu16にpyenvを導入したよ
今回は完全に今更ではありますが、Pythonのバージョン管理がしたかったのでpyenvをインストールしたので備忘録的にまとめていこうと思います。最近では別のバージョン管理ソフトの方がいいらしいのですが、自分はPython雑魚勢なので知りません。
OS : Ubuntu 16.04 LTS
1. インストール
ではさっそくインストールしていきます。まずは必要なものをGitで持ってきます。
1 |
$ sudo git clone git://github.com/yyuu/pyenv.git ~/.pyenv |
上記のコマンドではホームディレクトリに”.pyenv”という名前でダウンロードしてきましたが、これはお好きな場所にして大丈夫です。その場合は次の作業の.bashrcでPATHを通すディレクトリを間違えないようにお気をつけ下さい。
次はダウンロードしたディレクトリにPATHを通します。編集するファイルはホームディレクトリにある.bashrcです。echoコマンドなどで追記してもいいのですが、自分は直接編集してしまいます。というわけで、.bashrcに以下の内容を追記します。場所は最後尾で大丈夫かと思います。
1 2 3 |
export PYENV_ROOT=$HOME/.pyenv export PATH=$PYENV_ROOT/bin:$PATH eval "$(pyenv init -)" |
もしgitでダウンロードする際に例で挙げたディレクトリ以外にした方は、はじめの行の”PYENV_ROOT=”以降をご自身のディレクトリにあるように変更してください。
追記が終了したら以下のコマンドで変更を適用してください。
1 |
source .bashrc |
これでPythonインストールの準備は終わりました。
2. 使ってみる
では早速Pythonのバージョンを変えてみようと思います。
今回の自分の環境ではデフォルトでPython 2.7.12がインストールされていました。今回はこれをPython 3.6.3に変更しようと思います。使えるようするには、まずPython3.6.3をインストールする必要があります。これは以下のコマンドでできます。
1 |
$ pyenv install 3.6.3 |
ちなみに今回はPython3.6.3をインストールしますが、pyenvでインストールできるPythonの環境は以下のコマンドで確認することができます。
1 |
$ pyenv install --list |
今回の自分の環境では、”pyenv install 3.6.3″の実行時にzlibigが有効ではないという以下のエラーが出ました。
1 |
zipimport.ZipImportError: can't decompress data; zlib not available |
これはzlib1g-devをインストールすれば解決です。
1 |
$ sudo apt-get install zlib1g-dev |
また、openSSLライブラリが無いんでね?とも言われました。
1 |
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib? |
これもインストールして解決です。
1 |
$ sudo apt-get install libssl-dev |
これで、Python 3.6.3のインストールができると思います。しかし、インストールしただけでは、実行されるPythonは変わりません。そのため、以下のコマンドで実行するPythonのバージョンを入れ替えてあげます。
1 |
$ pyenv global 3.6.3 |
現在インスト−るされているPythonのバージョンは以下のコマンドで確認することができます。
1 |
$ python --version |
このコマンドで、目標のPythonバージョンが表示されたら作業は完了です。
おわりに
今回はただメモの気持ちが強かったので、必要最低限の内容でした。しかし、最近は記事を書くテンションが落ちていたので、また書き始めるための原動力になればいいなという裏の目標もありました。
調べればいくらでも出てくる内容でしたが、何かの参考になれば幸いです。