Amazon LinuxでPython3を使う

%e3%82%b9%e3%82%af%e3%83%aa%e3%83%bc%e3%83%b3%e3%82%b7%e3%83%a7%e3%83%83%e3%83%88-2016-12-23-9-11-18

AmazonのLinuxでPython3を使う、ということだけでえらくハマりましたので、その手順を紹介します。Python2.7は標準で入っているのですが、Python3は自分で入れる必要があります。Pythonのインストールは簡単ですが、ライブラリをインストールするpipでハマりました。

標準で入っているpipではPython2.7用のライブラリ管理になります。Python3.5.2をインストールして同時にpip3が入りました。しかしこのpip3は何故かインストールしていないPython3.4.2のライブラリをインストールしてしまいPython3.5.2から使えないという不思議な事になってしまってました。色々と試してわけわからない状態になったのですが、このサイト(http://kazsoga.com/pyenv-aws/)を参考にしたらできました。

以下、私のやった手順です。他にも色々とやっていたのでこれだけでいけるのかどうかわかりませんが。。。。

sudo su -

でスーパーユーザーになって

yum install gcc gcc-c++ make git openssl-devel bzip2-devel zlib-devel readline-devel sqlite-devel

gccとかをインストール。pip3のインストールでzlibが無いとか言われることもあったのでzlib-devlとかがポイントかなと。
次にpythonのバージョン管理をしてくれるツールpyenvをインストール。

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

.bashrcを編集します。

vi ~/.bashrc

でviエディタで.bashrcを開きます。以下のように編集します。後半が追加した部分。前半は最初からあるもの、そのままです。

# .bashrc
# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
       . /etc/bashrc
fi

export PYENV_ROOT="${HOME}/.pyenv"
if [ -d "${PYENV_ROOT}" ]; then
export PATH=${PYENV_ROOT}/bin:$PATH
eval "$(pyenv init -)"
fi
source ~/.bashrc

とします。
pyenvでインストールするバージョンを確認するために

pyenv install —list

でlistを表示します。ズラーっと表示されるので、ここからインストールするバージョンを選択します。私は3.5.2をインストールしました。

pyenv install 3.5.2

インストールが終わったら

pyenv versions

でバージョンの確認をして見ます。
デフォルトで使うバージョンを3.5.2にします。

pyenv global 3.5.2

pythonコマンドのバージョンを確認して見ます。

python -V

3.5.2と表示されていればオッケー。
次にpip3をインストールします。

git clone https://github.com/yyuu/pyenv-pip-rehash.git

でpipをインストール。
続いて次のコマンド

git clone git://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

これでpip3がインストールされたはず。

pip3 -V

でバージョンを確認します。

which pip3

でpip3がインストールされた場所を確認できます。
続いてbeautifulsoup4をインストールします。これが本命でやりたかったことなんですが、pip3を動かすために長々と色々やってました。

pip3 install beautifulsoup4

これでインストールできました。

pip3 list

でインストールされたライブラリがリスト表示されます。
以上で終わり!