相信大家在部署一些项目到服务器时,大多数情况都是在centos的环境下部署的,这一篇文章主要是教大家如何在centos的服务器下安装Python3,并且在既有Python2又有Python3的情况下如何把pip转为Python3中的pip。这都是我自己走过的坑,所以写出来给大家看看,防止大家也在这个坑里面浪费时间。大家只需要按照下面的步骤一步一步来,是不会出错的!
1安装编译python3所用到的相关依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
运行了以上命令以后,就安装了编译python3所用到的相关依赖
2添加epel扩展源&安装pip
#添加epel扩展源yum -y install epel-release #安装pipyum install python-pip
3用pip装wget
pip install wget
4用wget下载python3的源码包
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
5编译python3源码包
#解压xz -d Python-3.6.4.tar.xztar -xf Python-3.6.4.tar #进入解压后的目录,依次执行下面命令进行手动编译cd Python-3.6.4./configure prefix=/usr/local/python3make && make install
如果出现can't decompress data; zlib not available这个错误,则需要安装相关库了(我建议都安装一下)
#安装依赖zlib、zlib-develyum install zlib zlibyum install zlib zlib-devel
如果最后没有出错,就恭喜你成功安装了,在/usr/local/目录下就会有python3目录。
6添加软链接
#将原来的链接备份mv /usr/bin/python /usr/bin/python.bak #添加python3的软链接ln -s /usr/local/python3/bin/python3.6 /usr/bin/python #测试是否安装成功了python -V
7更改yum配置
因为其要用到python2才能执行,否则会导致yum不能正常使用
vi /usr/bin/yum把#! /usr/bin/python修改为#! /usr/bin/python2 vi /usr/libexec/urlgrabber-ext-down把#! /usr/bin/python 修改为#! /usr/bin/python2
8将pip设置为python3中的pip
当我们安装完Python3之后,使用pip去下载库,我们会发现它下载的还是Python2中的,所以此时我们需要切换到Python3中的pip。按照下面的步骤进行即可!
#将原来的python,pip链接备份 mv /usr/bin/python /usr/bin/python.bak mv /usr/bin/pip /usr/bin/pip.bak #添加python3的软链接 ln -s /usr/local/python3/bin/python3.6 /usr/bin/python ln -s /usr/local/python3/bin/pip3 /usr/bin/pip#测试是否安装成功了 也可以用来查看python,pip版本python -Vpip -V
做到这里,你就可以安安心心的去部署你的python项目啦!