A-A+

CentOS升级Python2.6到Python2.7

2018年10月06日 21:47 汪洋大海 暂无评论 共1751字 (阅读2,031 views次)

公司机器给的是CentOS 6.X系统,默认安装的Python是2.6版本,恰巧我的程序引用的部分库需要2.7版本或以上,所以需要升级Python到2.7,刚折腾完在这里做个简单的记录 🙂

 

0X01 升级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
yum -y install readline readline-devel
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

执行完以上命令会解压得到Python-2.7.10这个文件夹,修改Setup文件,将我们编译需要的zlib去掉注释

vim ./Modules/Setup.dist

找到#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz去掉注释并保存,然后执行以下命令进行配置

./configure --enable-shared --enable-loadable-sqlite-extensions --enable-unicode=ucs4 --with-zlib

其中--enable-loadable-sqlite-extensions是sqlite的扩展,如果需要使用的话则带上这个选项。
配置完成后执行编译:

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

 

0X02 安装pip


更新pip源为国内的pip源,linux下,修改 ~/.pip/pip.conf,没有就创建一个,内容如下:

[root@wooyaa ~]# mkdir ~/.pip 
[root@wooyaa ~]# vim ~/.pip/pip.conf
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com

下载最新版的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安装完毕,现在可以用它懒人安装各种需要的包了 🙂

 

0X03 安装scrapy

直接 pip install scrapy 就ok了

文章来源:http://wooyaa.me/archives/Update-python 作者:wooyaa

布施恩德可便相知重

微信扫一扫打赏

支付宝扫一扫打赏

×
标签:

给我留言