第一步:升级python
CentOs 6.x的系统默认安装的Python版本是2.6.x,想升级到Python2.7.x,从官方下载源文件,然后解压、编译
wget http://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xz
unxz Python-2.7.10.tar.xz
tar -vxf Python-2.7.10.tar
执行完以上命令会解压得到Python-2.7.10这个文件夹,进入该目录并执行以下命令进行配置
./configure --enable-shared --enable-loadable-sqlite-extensions --with-zlib
其中--enable-loadable-sqlite-extensions是sqlite的扩展,如果需要使用的话则带上这个选项。
编译之前需要修改Setup文件,将我们编译需要的zlib去掉注释
vi ./Modules/Setup
找到#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz去掉注释并保存,然后进行编译和安装
make && make install
安装好Python2.7之后我们需要先把Python2.6备份起来,然后再对yum的配置进行修改,如果不进行这一步操作的话,执行yum命令将会提示你Python的版本不对。执行以下命令,对Python2.6进行备份,然后为Python2.7创建软链接:
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
现在执行yum命令已经不会出现之前的错误信息了。我们执行python -V查看版本信息,如果出现错误
error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory
编辑配置文件
vi /etc/ld.so.conf
添加新的一行内容/usr/local/lib,保存退出,然后
/sbin/ldconfig
/sbin/ldconfig -v
第二步:安装pip
下载最新版的pip,然后安装
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
查找pip的位置
whereis pip
找到pip2.7的路径,为其创建软链作为系统默认的启动版本
ln -s /usr/local/bin/pip2.7 /usr/bin/pip
pip安装完毕,现在可以用它懒人安装各种需要的包了 :)
第三步:安装scrapy
直接 pip install scrapy 就ok了
总结
以上就是CentOS 6.X系统下升级Python2.6到Python2.7的全部步骤了,大家都学会了吗?希望这篇文章对大家的学习或工作带来一定的帮助。