centos 7.3 升级 python 到 2.7.13 以及pip yum

更新python千万不要把老版本的删除!新老版本是可以共存的,很多基本的命令、
软件包都要依赖预装的老版本python的,比如yum。

1. 查看 python 版本

[jack@ ~]$ python -V
Python 2.7.5

2.编译前准备

python 在编译之前配置的时候会探测环境的库是否存在,有的库不在,对应的功能会放弃

为了安装setuptools,要需要安装zlib:

yum install zlib zlib-dev
为在python编译时加入ssl模块,yum安装openssl和openssl-devel:

yum install openssl

yum install openssl-devel

209 sudo yum install openssl
210 sudo yum install openssl-devel
211 sudo yum install ncurses-libs
212 sudo yum install readline-devel
213 sudo yum install sqlite-devel
214 sudo yum install bzip2-devel
215 sudo yum install gdbm-devel
216 sudo yum install libdbi-devel

2.编译python 2.7.13

cd /home/jack/work/
wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
tar xvf Python-2.7.13.tgz
cd Python-2.7.13
./configure --prefix=/usr/local/python27
sudo make
sudo make install

3 . 原本的连接

这里写图片描述

4. 修改连接

sudo mv /usr/bin/python2 /usr/bin/python2_old
sudo mv /usr/bin/python2.7 /usr/bin/python2.7.5
sudo mv /usr/bin/python /usr/bin/python_old

sudo ln -s /usr/local/python27/bin/python2.7 /usr/bin/python2
sudo ln -s /usr/bin/python2 /usr/bin/python

这里写图片描述

这里写图片描述

其中用到了 python2 的目的是 ,以后有可能会用到python3
/usr/bin/python2 和 /usr/bin/python2.7 应该需要删掉
因为有的python 脚本里面会注明使用 /usr/bin/python2

5. 解决 yum的问题

yum 需要用到原来的 python2.7.5

sudo vi /usr/bin/yum

这里写图片描述

sudo vi /usr/libexec/urlgrabber-ext-down

这里写图片描述

6 测试一下 yum 是否能够正常使用

yum info gcc

查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包

7 安装python2.7.13 对应的pip

wget https://bootstrap.pypa.io/get-pip.py

sudo python get-pip.py

The script wheel is installed in ‘/usr/local/python27/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.

8 替换原来的pip

原来的pip
这里写图片描述

sudo mv /usr/bin/pip /usr/bin/pip_old
sudo mv /usr/bin/pip2 /usr/bin/pip2_old
sudo mv /usr/bin/pip2.7 /usr/bin/pip2.7_old

sudo cp /usr/local/python27/bin/pip* /usr/bin/

9 测试一下 pip

这里写图片描述

10 设置环境变量

sudo vi /etc/profile
在最后面加上

export PYTHON_HOME=/usr/local/python27
export PATH=$PYTHON_HOME/bin:$PATH

source /etc/profile # 当前终端生效,reboot后才会完全生效
echo $PATH

遇到问题:

Python build finished, but the necessary bits to build these modules were not found:
_bsddb _curses _curses_panel
_sqlite3 _ssl _tkinter
bsddb185 bz2 dbm
dl gdbm imageop
readline sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module’s name.

running build_scripts

这里写图片描述
209 sudo yum install openssl
210 sudo yum install openssl-devel
211 sudo yum install ncurses-libs
212 sudo yum install readline-devel
213 sudo yum install sqlite-devel
214 sudo yum install bzip2-devel
215 sudo yum install gdbm-devel
216 sudo yum install libdbi-devel

遇到问题

Traceback (most recent call last):
File “get-pip.py”, line 20649, in
main()
File “get-pip.py”, line 197, in main
bootstrap(tmpdir=tmpdir)
File “get-pip.py”, line 82, in bootstrap
import pip._internal
zipimport.ZipImportError: can’t decompress data; zlib not available

yum install zlib zlib-devel -y
yum -y install zlib*

猜你喜欢

转载自blog.csdn.net/wowocpp/article/details/80710984