pip install したら Cannot fetch index base URL http://pypi.python.org/simple/

pythonbrewからpythonを使用していて、
さくらのVPS上でpip install とはじめてやったら下記の通りでる。

Downloading/unpacking Django==1.3
  Cannot fetch index base URL http://pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement Django==1.3
No distributions at all found for Django==1.3
Storing complete log in /home/webapp/.pip/pip.log

言われた通り /home/webapp/.pip/pip.log を見てみたら
https が動きません」
みたいなログが出ている。

ググったらなんか同じような悩みの人が出て来た
http://www.webtop.com.au/blog/compiling-python-with-ssl-support-fedora-10-2009020237

pythonbrewでpython入れたら
必要なモジュールがリンク出来なくて入らなかった。
というようなことが書いてある。

さらに読めば
openssl-develがはいってないとpythonビルド時にsslモジュールが入らなくて、
それでurllib2.openが失敗してるとかどうとか



え、そうなの。

$ python
>>> import ssl
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/webapp/.pythonbrew/pythons/Python-2.7.2/lib/python2.7/ssl.py", line 60, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: No module named _ssl

ほんとですね。sslが入ってない。

入れて再インストール

yum install openssl-devel
pythonbrew uninstall 
pythonbrew uninstall Python-2.7.2
pythonbrew install Python-2.7.2
pythonbrew switch 2.7.2
$ python 
Python 2.7.2 (default, Jul  6 2013, 23:25:10) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl

やた。

pip install Django==1.3 
Downloading/unpacking Django==1.3
  Downloading Django-1.3.tar.gz (6.5MB): 6.5MB downloaded
  Running setup.py egg_info for package Django
    
Installing collected packages: Django
  Running setup.py install for Django
    changing mode of build/scripts-2.7/django-admin.py from 644 to 755
    
    changing mode of /home/webapp/.pythonbrew/venvs/Python-2.7.2/py272/bin/django-admin.py to 755
Successfully installed Django
Cleaning up...

OK 無事にpip出来ました。