CentOS7 源码编译Python 3

小柊 发表于 2018年09月05日 00时00分46秒

序、扯淡

之前一直把CentOS7源码编译安装Python 3的命令放在钉钉的石墨文档里,并不准备把这个当作一篇博客单独放出来的。但最近要源码编译Python 3的次数实在是太多了,而且每次打开石墨文档的速度实在是太——慢——了——(还不如我的博客快),所以决定把CentOS源码编译安装Python 3的命令放到博客里来,以后需要用的时候就直接翻博客算了。

 

注:本文在2019年4月30日被重新编辑

 

一、背景

众所周知,CentOS系统为了保证系统的稳定性,系统自带的组件以及官方源中的软件包版本都相对比较低,自带的Python版本一直停留在Python 2.7.5,雷打不动。不过你看人家Ubuntu还能通过apt-get再进一步的安装Python 3.x,而CentOS自带的源压根没有Python 3.x的软件包,更过分的是在官方源中连Python2的pip也没有。也不知道2020年官方停止Python 2.7的支持时,CentOS能不能提供官方源Python 3.x。

CentOS对Python 2.7这么情有独钟的主要原因在于,其系统中很多程序依赖于Python 2.7,如果一不留神、一个手贱把自带的Python 2.7干掉了,那么你就可以惊奇的发现CentOS有很多命令咖喱给给了,比如说yum……

 

二、操作

源码编译安装 Python 3.x 其实并不难,主要是要搞清楚编译时需要先安装好的组件。如果在编译时缺失了一些必要的组件,在以后使用 Python 的时候就会遇到各种奇怪的问题。

键入以下的命令,下面的命令装的是Python 3.7.3,如果需要其他版本,请自行调整第四行curl请求的源码包地址中的版本号:

此处给出的命令只是常规编译安装,如果需要在编译时进行其他的高级配置,请移步第四章。

 

三、注意事项

1.如果上面的命令一路下来都没有问题,之后你可以使用“python3”命令进入Python 3的交互命令行或执行Python3的脚本,“pip3”命令安装Python 3的软件包。如果需要执行Python 2的脚本,依旧使用原来的“python”命令进行调用。

2.源码编译安装的Python 3会默认安装好pip和setuptools(官网的 Python 3.6.3 源码编译后自带的pip版本为9.0.1,setuptools版本为28.8.0);

3.如果要升级pip3的话,最好不要使用下面这个pip自己提示的命令(特别是在系统中同时存在Python 2和3,pip 2和3的情况下):

 

因为这么做很有可能会出现升级后pip3命令找不到或者运行出错的问题(可能是因为在升级的过程中错误的调用了系统自带的Python 2),建议使用get-pip.py的方式去升级:

 

 

小柊

2018年9月4日 23:50:18

相关文章

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注