Black White Cow
黑白牛的个人博客:分享技术、分享生活。人生苦短(Life is short, you need Python! ),别说废话(Talking is cheap, show me the codes!),新进小技术宅一枚,请多多关照!

VPS 基于centOS 7 源码编译安装Python3.8.2环境

简单说一下centOS 7 内置了2.7.5版本的Python,但是现在我们需要运行的脚本或py程序可能需要python3.X的支持,所以才有了安装Python3.8.2(目前最新稳定版)的这一说。但是安装Python3.X归安装,千万不要动原始的2.7.5版本,因为yum指令等其他服务需要依赖2.7.5版本。下面就简单说说如何操作,及安装完成将Python3.8.2设置为默认后yum失效如何处理。

首先安装依赖文件:

1
2
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel openssl-static ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel lzma

补充一下没有安装gcc编译器,没有安装make和wget的还需要执行一下安装步骤

1
yum -y install gcc make wget

现在我们去Python官网下载最新的源码文件:
https://www.python.org/

我们发现最新版本是3.8.2,进入downloads里面就可以下载了,源码文件有gzip和xz2种压缩格式,我们选gzip格式的,复制他的链接,然后在终端输入:

1
wget https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz

文件会被下载到根目录,然后我们需要解压:

1
tar -zxvf Python-3.8.2

解压后进入目录:

1
cd Python-3.8.2

接下来进行编译安装:

1
2
3
mkdir /usr/local/python3/    #创建一个python3文件夹
./configure --prefix=/usr/local/python3/    #预编译设置安装路径
make && make install    #编译及安装

以上就是全部安装过程,到这里Python3已经安装完毕了,但是你会发现使用python -V 查看版本还是提示2.7.5,使用python指令也是调用的2.7.5版本,下面我们需要通过建立软链接来将python命令链接到python3以到默认使用Python3版本

1
2
ln -s /usr/local/python3/bin/python3 /usr/bin/python #软连python到python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip #软连pip到pip3

到这里你已经可以使用pip安装python的各种库了并且可以通过python -V来查看版本是Python 3.8.2了。到这里所有工作都结束了。

但是!但是!但是!还没有完。因为修改了软连将python指向了python3,所以原本依赖2.7.5版本的yum命令失效了,我们需要更改一下yum内的软连指向:

一共有3个地方需要修改,一定要改,不改当下运行yum会报错,后期也会有各种报错!比如安装WordPress的时候yum-config-manager也会报错。

①/usr/bin/yum 路径

1
vi /usr/bin/yum

将!/usr/bin/python2 改成 !/usr/bin/python2.7

②/usr/libexec/urlgrabber-ext-down 路径
1
vi /usr/libexec/urlgrabber-ext-down

将!/usr/bin/python2 改成 !/usr/bin/python2.7

③/usr/bin/yum-config-manager 路径
1
vi /usr/bin/yum-config-manager

将!/usr/bin/python2 改成 !/usr/bin/python2.7

至此Python3全部配置完毕,依赖关系也修改完成,现在你可以在VPS上敲python代码了,也可以运行依赖Python3.X的py文件了!

Share

sakura669

Mihoyo save tech otakus

You may also like...

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

%d 博主赞过: