Amazon Linuxでpip3は使えるのに、pipが使えなくなったりする現象メモ(解決追記)


Amazon Linuxで環境構築して、Python 3.4.3をインストール。

で、Amazon Linux AMIにはpipがインストールされていました。

で、環境を整えるために、Development toolsなどをインストール。
sudo yum groupinstall "Development tools"
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
sudo make
sudo make install

で、この段階で、

Successfully installed pip-6.0.8 setuptools-12.0.5
と表示され、

pipとpip3が同居することになる。

具体的には、pip listとpip3 listで異なるパッケージがインストールされていることを確認。

で、
sudo pip3 install virtualenv
しようとしたら怒られる。

また、
You are using pip version 6.0.8, however version 6.1.1 is available.
You should consider upgrading via the ‘pip install –upgrade pip’ command.
と出ていたので、とりあえず、pipのアップグレードをしようと。

$ sudo pip install --upgrade pip

Successfully installed pip-6.1.1
と表示された。

ここまでは良いのですが、、、
$ pip list
-bash: /usr/bin/pip: そのようなファイルやディレクトリはありません
となり、
$ pip3 list
You are using pip version 6.0.8, however version 6.1.1 is available.
You should consider upgrading via the ‘pip install –upgrade pip’ command.
pip (6.0.8)
setuptools (12.0.5)
となる。

なんだろう。また、

$ sudo pip3 install --upgrade pip
sudo: pip3: コマンドが見つかりません

となる。

で前もあったなあって。

Amazon LinuxにDjango 1.7.7をインストール-はじめてのAWS | kazsoga(曽我一弘)ブログ

$ sudo passwd root #パスワードを設定
$ su
パスワード:
root$ visudo #編集

Defaults secure_pathを、
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
に変更。

$ sudo pip3 install --upgrade pip
You are using pip version 6.0.8, however version 6.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-6.1.1-py2.py3-none-any.whl#md5=172eb5abab25a5e0f7a7b63c7a49378d
Using cached pip-6.1.1-py2.py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 6.0.8
Uninstalling pip-6.0.8:
Successfully uninstalled pip-6.0.8

Successfully installed pip-6.1.1

できた。

このあたりいろいろと謎です。

追記

いろいろと試していてわかった。
sudoでpipをインストールすると、それがひも付けられる。

sudo pip install --upgrade pip
だと、pipのコマンドがpipをpip3のコマンドがpip3を見る。

で、
sudo pip3 install --upgrade pip
とすると、pipのコマンドがpip3を見るようになる。

解決方法して、
pyenvのインストールと設定-はじめてのAWS | kazsoga(曽我一弘)ブログ
が良いことがわかる。