通过 SCL devtoolset 在 Scientific Linux 6 上安装 Python 2.7

通过 SCL devtoolset 在 Scientific Linux 6 上安装 Python 2.7

根据这篇文章,我了解 Scientific Linux 6 使用 Python 2.6.6 来实现几个关键实用程序,包括 yum如何在 Centos 6 上安装 Python 27

我发现的最简单且最干净的安装是基于 Red Hat Software Collection 和我已经安装的 devtoolset-3 软件包在 Scientific Linux 中编译

我停在下一步:

yum install python27
scl enable python27 bash

您能否建议在不进行替代安装的情况下按照指示进一步进行是否“安全”?谢谢。

答案1

您应该验证该信息python27来自 SCL 而不是其他地方。

就我而言,我使用的是 CentOS 6,但过程是相同的。

所以:

$ yum info python27  
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
6 packages excluded due to repository priority protections
Available Packages
Name        : python27
Arch        : x86_64
Version     : 1.1
Release     : 25.el6
Size        : 5.2 k
Repo        : centos-sclo-rh
Summary     : Package that installs python27
License     : GPLv2+
Description : This is the main package for python27 Software Collection.

我们可以看到它来自于centos-sclo-rh正确的版本。

我们可以安装这个。因为它来自 SCL,所以它将安装到其中/opt/rh,这将不是影响操作系统的任何其他方面:

$ sudo yum install python27
...
$ ls /opt/rh
python27

我们可以看到默认的python仍然没有改变:

$ /usr/bin/python --version
Python 2.6.6

现在我们需要scl命令。这是来自scl-utils您可能需要安装的软件包 ( yum install scl-utils)。

$ scl enable python27 bash

这将运行一个更改了路径的新 shell:

$ scl enable python27 bash
bash-4.1$ echo $PATH
/opt/rh/python27/root/usr/bin:/usr/local/bin:/usr/bin/X11:/etc:/usr/local/sbin:/sbin:/usr/sbin
bash-4.1$ command -v python
/opt/rh/python27/root/usr/bin/python
bash-4.1$ python --version
Python 2.7.8

因此启用和运行 SCL 不会影响核心操作系统;它不会破坏您通常运行的任何内容,但允许并行安装较新版本的 python(在 中/opt/rh)。

相关内容