centos7 安装python3

  • Post author:
  • Post category:python



centos7自带版本是python2.7,在使用过程中会出现其他软件不兼容的情况,需要安装python3版本,但在centos7上还有许多是依赖python2执行的,例如 yum等,所以我们要安装环境并进行配置,下面是详细的步骤。

安装环境


1、解压Python安装包

首先从官网下载你所需要的python3版本(我使用的是3.8.5),在官网中没有linux版本的python,只能下载源码进行安装,将下载的tar包上传到linux系统上并进行解压。

tar -zxvf  Python-3.8.5.tgz

2、安装编译相关工具

python底层使用C写的,所以需要对python源码进行编译

下载开发工具包

yum -y groupinstall "Development tools"

安装依赖

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

yum install libffi-devel -y

3、编译、安装Python

python一般安装在/usr/bin/目录下,我们可以通过

ll /usr/bin/ |grep python


查看原来python2的软链接

-rwxr-xr-x.   1 root root      11232 Aug 13  2021 abrt-action-analyze-python

lrwxrwxrwx.   1 root root          7 May 17 11:36 python -> python2

lrwxrwxrwx.   1 root root          9 May 17 11:36 python2 -> python2.7

-rwxr-xr-x.   1 root root       7216 Aug  7  2021 python2.7

下面我们需要创建编译python3的安装目录

mkdir /usr/local/python3 #创建编译安装目录

再进入你解压的python文件之中,检测安装环境指定自己创建的安装目录 /usr/local/python3 ,如果过程出现报错,需要查看依赖安装是否出现问题

cd Python-3.8.5
./configure --prefix=/usr/local/python3
make && make install #编译 和 安装

安装出现下面两行就成功了(中间有警告不用管)

Installing collected packages: setuptools, pip

Successfully installed pip-20.1.1 setuptools-47.1.0

这样你的python3环境就已经安装成功了,下面需要进行配置

配置法一(推荐)


1、创建软连接


#查看当前python软连接

ll /usr/bin/ |grep python

系统默认安装的是python2.7 删除python软连接

rm -rf /usr/bin/python

#配置软连接为python3

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

这个时候看下python默认版本

python -V

版本就为python3了

删除默认pip软连接,并添加pip3新的软连接

rm -rf /usr/bin/pip
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip


2、更改yum配置


因为yum要用到python2才能执行,否则会导致yum不能正常使用(不管安装 python3的那个版本,都必须要做的)

vi /usr/bin/yum 
把 #! /usr/bin/python 修改为 #! /usr/bin/python2 

vi /usr/libexec/urlgrabber-ext-down 
把 #! /usr/bin/python 修改为 #! /usr/bin/python2

vi /usr/bin/yum-config-manager
#!/usr/bin/python 改为 #!/usr/bin/python2

配置法二

如果需要Python2和3版本同时存在 那么就不要删除之前的软链接  创建Python3软连接即可

ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

但在之后需要使用python3运行程序时,需要打印python3,不然系统默认使用自带的。



版权声明:本文为PEAKY__Blinders原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。