Fedora 发行版默认使用的 Python 语言版本从 Python 2 切换到 Python 3
还需要在发布多个版本之后才能完成。最新提议的日期是到 2020
年,也就是上游淘汰 Python 2 之时。

在工作环境中使用的是python
2.7.*,但是CentOS 6.4中默认使用的python版本是2.6.6,故需要升级版本。

目前 Fedora 的大部分 Python 代码能兼容 Python 3,但
/usr/bin/python 仍然指向 Python 2,各种
python- 澳门新葡萄京官网首页,*包仍然意味着是在使用 Python 2。

安装步骤如下:

开发者希望在 Fedora 30 中可从 Python 2 包删除 python- prefix,并从
shebangs 中删除 /usr/bin/python,,还希望到 2020 年上半年发布 Fedora 32
时,默认的 Python 版本能切换到 Python 3,然后到 Fedora 33
或更高版本后可以摆脱 Python 2。

1,先安装GCC,用如下命令yum install gcc gcc-c++

有关这些计划的更多细节可通过这个 Fedora
维基页面进行了解,Fedora
devel
也在讨论这件事。

2,下载python-2.7.5.tar.gz文件,修改文件权限chmode +x python-7.5.tar.gz

来自:http://phoronix.com

3,解压tar文件,tar -xzvf python-2.7.5.tar.gz

4,cd python-2.7.5

./configure –prefix=/usr/local/python27 ###
注意:安装在新目录,防止覆盖系统默认安装的python

make && make install

5、建立软连接,使系统默认的python指向python27

mv /usr/bin/python /usr/bin/python2.6.6.old

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

已经安装完成python的安装或升级的全部操作了,我们再来看一下现在的python的版本:

# python -V

Python 2.7.5

虽然现在python已经安装完成,但是使用yum命令会有问题——yum不能正常工作:

# yum list

There was a problem importing one of the Python modules

required to run yum. The error leading to this problem was:

No module named yum

Please install a package which provides this module, or

verify that the module is installed correctly.

It’s possible that the above module doesn’t match the

current version of Python

这是因为yum默认使用的python版本是2.6.6,到哪是现在的python版本是2.7.5,故会出现上述问题,只需要该一下yum的默认python配置版本就行了:

#vi /usr/bin/yum

将文件头部的#!/usr/bin/python改为

#!/usr/bin/python2.6