貌似CentOS 6.X系统默认安装的Python都是2.6版本的?平时使用以及很多的库都是要求用到2.7版本或以上,所以新系统要做的第一件事必不可少就是升级Python.
升级Python
下载源码
wget http://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
没有wget需要yum install wget
在下载目录解压源码
tar -zxvf Python-2.7.12.tgz
进入解压后的文件夹
cd Python-2.7.12
在编译前先在/usr/local
建一个文件夹python2.7.12
(作为python的安装路径,以免覆盖老的版本,新旧版本可以共存的)
mkdir /usr/local/python2.7.12
编译前需要安装下面依赖,否则下面安装pip就会出错
yum install openssl openssl-devel zlib-devel gcc -y
安装完依赖后执行下面命令
vim /Modules/Setup.dist
找到
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
去掉注释并保存(即去掉#)
执行完以上命令会解压得到Python-2.7.10
这个文件夹,进入该目录并执行以下命令进行配置
1
|
|
其中--enable-loadable-sqlite-extensions
是sqlite的扩展,如果需要使用的话则带上这个选项。
然后进行编译和安装
1
|
make && make install
|
安装好Python2.7
之后我们需要先把Python2.6
备份起来,然后再对yum
的配置进行修改,如果不进行这一步操作的话,执行yum
命令将会提示你Python的版本不对。
执行以下命令,对Python2.6
进行备份,然后为Python2.7
创建软链接
1
2
|
mv /usr/bin/python /usr/bin/python2.6.6
ln -s /usr/local/bin/python2.7 /usr/bin/python
|
然后编辑/usr/bin/yum
,将第一行的#!/usr/bin/python
修改成#!/usr/bin/python2.6.6
我们执行python -V
查看版本信息,如果出现错误
error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory
编辑配置文件
1
|
vi /etc/ld.so.conf
|
添加新的一行内容/usr/local/lib
,保存退出,然后
1
2
|
/sbin/ldconfig
/sbin/ldconfig -v
|
安装pip
下载最新版的pip,然后安装
1
2
|
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
|
查找pip的位置
1
|
whereis pip
|
找到pip2.7
的路径,为其创建软链作为系统默认的启动版本
1
|
ln -s /usr/local/bin/pip2.7 /usr/bin/pip
|
pip安装完毕,现在可以用它下载安装各种包了