我正在RHEL7上进行Python2.7.13的altinstall,它安装了2.7.5。以下是我如何从源头上构建的:

$ ./configure --prefix=/usr/local --enable-shared
$ make && sudo make altinstall

然而,即使我试图直接访问这个altinstall,我也得到了系统Python,而不是altinstall。我把SELinux设为允许模式,得到了同样的结果。
$ /usr/local/bin/python2.7 -V
Python 2.7.5
$ getenforce
Permissive

当我进入翻译室
$ /usr/local/bin/python2.7
Python 2.7.5 (default, Aug  2 2016, 04:20:16)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

我在这里不知所措。从我读过的每一件事来看,这应该是有效的。我唯一能想到的是,因为它们都是2.7.X版本,所以会有一些冲突,但我认为这就是为什么首先要安装altinstalls。

最佳答案

我相信你遇到了和这篇文章一样的问题:Strange Python compilation results with “--enable-shared” flag
要修复它,您需要使用:

LD_RUN_PATH=/usr/local/lib make && sudo make altinstall

(以便生成的二进制文件查找正确的共享Python库。)
另外,我认为当您需要在一个系统上使用不同的Python版本时,Red Hat软件集合会更好地为您服务。查看About RHSCL

10-04 11:51