centos 6 升级python2.7

centos6 默认python 2.6.6 升级 python2.7 过程

1. 安装python2.7编译所需依赖:

yum -y install readline-devel sqlite-devel bzip2-devel.i686 openssl-devel.i686 gdbm-devel.i686 libdbi-devel.i686 ncurses-libs zlib-devel.i686 

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel

2. 下载python2.7安装包

wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tar.xz

tar -xf Python-2.7.9.tar.xz

3. 编译

cd /Python-2.7.9/

./configure --prefix=/usr/local/python27 && make

我们编译的时候,系统没有办法找到对应的模块信息,为了解决这些报错,我们就需要提前安装依赖包,这些依赖包对应列表如下 :

模块	依赖	说明
_bsddb	bsddb	Interface to Berkeley DB library。Berkeley数据库的接口
_curses	ncurses	Terminal handling for character-cell displays。
_curses_panel	ncurses	A panel stack extension for curses。
_sqlite3	sqlite	DB-API 2.0 interface for SQLite databases。SqlLite,CentOS可以安装sqlite-devel
_ssl	openssl-devel.i686	TLS/SSL wrapper for socket objects。
_tkinter	N/A	a thin object-oriented layer on top of Tcl/Tk。如果不使用桌面程序可以忽略TKinter
bsddb185	old bsddb module	老的bsddb模块,可忽略。
bz2	bzip2-devel.i686	Compression compatible with bzip2。bzip2-devel
dbm	bsddb	Simple “database” interface。
dl	N/A	Call C functions in shared objects.Python2.6开始,已经弃用。
gdbm	gdbm-devel.i686	GNU’s reinterpretation of dbm
imageop	N/A	Manipulate raw image data。已经弃用。
readline	readline-devel	GNU readline interface
sunaudiodev	N/A	Access to Sun audio hardware。这个是针对Sun平台的,CentOS下可以忽略
zlib	Zlib	Compression compatible with gzip
在CentOS下,可以安装这些依赖包:readline-devel,sqlite-devel,bzip2-devel.i686,openssl-devel.i686,gdbm-devel.i686,libdbi-devel.i686,ncurses-libs,zlib-devel.i686。完成这些安装之后,可以再次编译,上表中指定为弃用或者忽略的模块错误可以忽略。

4. 安装

make install

echo $?

确定python2.7 是否安装成功

/usr/local/python27/bin/python -V

Python 2.7.9



备份python2.6 版本python

mv /usr/bin/python /usr/bin/python2.6.6



链接2.7版本python

ln -s /usr/local/python27/bin/python /usr/bin/python

python -V

[root@hn-web01-2-190 src]# python -V

Python 2.7.9

5. 修改yum所依赖的python

vim /usr/bin/yum
[root@hn-web01-2-190 src]# head -n1 /usr/bin/yum
#!/usr/bin/python2.6.6

测试yum是否可用
yum repolist
yum install lsof

6. 安装pip

cd /usr/local/src/
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py 
pip -V
 
[root@hn-web01-2-190 src]# pip -V
pip 18.1 from /usr/local/python27/lib/python2.7/site-packages/pip (python 2.7)

如果pip安装失败可以尝试 easy_install pip

猜你喜欢

转载自blog.csdn.net/weixin_43423965/article/details/105223910