您的位置:首页 > 编程语言 > Python开发

ipython需要2.7版本python, 手动编译; 解决yum在升级python2.7版本后的功能恢复; 解决pip命令失败问题.

2016-06-13 16:21 1591 查看
Python官网: python.org

ipython是python的一个工具, 下载链接: pypi.python.org/pipy/ipython.

pip install命令安装ipython, 默认最新版本的; python2.6并不支持最新版ipython, 所以需要手动编译安装2.7或者更高版本python.

注意的是, pip命令是需要安装python-pip包才能支持, 而这个包需要epel源支持, 没有的话执行命令:

# yum install -y epel-release
# yum install -y python-pip


实际中, 2.6版本的python在执行命令:

# pip install ipython


的时候, 提示需要2.7版本或者更高版本的python的支持, 这就是下面介绍2.7版本python编译安装的原因.

另外, 可以指定ipython的安装版本, 这样python2.7也就没必要编译安装了 :

# pip install ipython==1.2.1


如果想用新版本的ipython, 继续下面python2.7的编译安装步骤 :

下载python2.7版本的源码包, xz和gzip格式都可以.

# cd /usr/local/src
# wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tar.xz # tar xf Python-2.7.11.tar.xz
# cd Python-2.7.11
# mkdir /usr/loacl/python27
# ./configure --prefix=/usr/local/python27
# make && make install


将原有自带的python运行脚本移除, 链接python27运行脚本.

# mv /usr/bin/python /usr/bin/python.bak
# ln -s /usr/local/python27/bin/python /usr/bin/python


如此执行python命令, 显示已经是2.7版本:

Python 2.7.11 (default, Jun 13 2016, 23:30:05)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>


注意: yum是基于python编写的, python版本更改以后, yum无法使用.

解决方法:

将原来的/usr/bin/python搬家, 也就是将2.6版本的运行脚本重命名.

将/usr/bin/python软链接到/usr/local/python27/bin/python2.7

将/usr/bin/yum的头部, 修改成2.6版本的python路径.

这样, yum还用原来的python2.6版本, 解决了兼容的问题. 而python则以2.7版本运行.

# mv /usr/bin/python /usr/bin/python2.6.6
# ln -s /usr/local/python27/bin/python2.7 /usr/bin/python
# vim /usr/bin/yum
#!/usr/bin/python --> #!/usr/bin/python2.6.6


pip install ipython时候出现错误:

[root@Lius ~]# pip install ipython
Traceback (most recent call last):
File "/usr/bin/pip", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named pkg_resources


不知道是不是pip的版本不配的原因. 于是, 官网找到了pip的安装方法: https://pip.pypa.io/en/stable/installing/

安装一个高版本的pip试试, 有一个get-pip.py链接: https://bootstrap.pypa.io/get-pip.py

# cd /usr/local/src
# wget https://bootstrap.pypa.io/get-pip.py # python get-pip.py


新的pip的默认执行文件路径在/usr/local/python27/bin/pip, 也就是在python的目录. 加入PATH, 便于命令直接调用pip:

# vim /etc/profile.d/path.sh
#!/bin/bash
#
export PATH=$PATH:/usr/local/python27/bin
# source /etc/profile


如此执行pip install ipython, 安装结束后, shell下直接输入ipython, 进入ipython的界面:

Python 2.7.11 (default, Jun 13 2016, 23:30:05)
Type "copyright", "credits" or "license" for more information.

IPython 4.2.0 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: print 'hello world'
hello world

In [2]:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python yum pip