使用python2.6而不是python2.7来安装ipython - 如何覆盖? CentOS 6.5

时间:2014-09-20 03:06:06

标签: pip ipython

我正在尝试使用pip在CentOS 6.5机器上安装ipython,但是我收到错误,因为它试图使用python 2.6而不是2.7。

默认情况下,我正在运行python 2.6

$ python -V
Python 2.6.6

位于/ usr / bin / python

$ which python
/usr/bin/python

我还安装了python 2.7,它位于usr / local / bin /

$ which python2.7
/usr/local/bin/python2.7

我想安装最新版本的ipython,我正在用pip来做这件事。

$ sudo pip install ipython

Downloading/unpacking ipython
Downloading ipython-2.2.0.tar.gz (11.9MB): 11.9MB downloaded
Running setup.py (path:/tmp/pip_build_root/ipython/setup.py) egg_info for package ipython
ERROR: IPython requires Python version 2.7 or 3.3 or above.
Complete output from command python setup.py egg_info:
ERROR: IPython requires Python version 2.7 or 3.3 or above.

我可以看到ipython的setup.py脚本在这里确定了活动版本:

v = sys.version_info

if v[:2] < (2,7) or (v[0] >= 3 and v[:2] < (3,3)):
    error = "ERROR: IPython requires Python version 2.7 or 3.3 or above."
    print(error, file=sys.stderr)
    sys.exit(1)

PY3 = (sys.version_info[0] >= 3)

我如何覆盖pip默认评估的版本?我应该在/ usr / local / bin中创建一个指向python 2.7的符号链接吗?只需在/usr/local/bin/python2.7上使用python的别名更新我的bash配置文件就不行了。谢谢。

1 个答案:

答案 0 :(得分:1)

如果您使用的是virtualenv,则可以在创建环境时使用-p开关,并且了解您需要python的版本:

virtualenv -p /usr/local/bin/python2.7 ~/.virtualenvs/venv

在〜/ .virtuenvs下创建一个virtualenv venv,并将/usr/local/bin/python2.7复制到〜/ .virtualenvs / venv / bin / python for python解释器。所有脚本顶部的行同样是#〜/ .virtualenvs / venv / bin / python。如果您仍有问题,请发表评论。