在CentOS中安装python 2.6

teh*_*yan 85 python centos rpath

我有一个运行CentOS的shell.

对于我正在做的项目,我需要python 2.5+,但centOS非常依赖于2.4.

根据我的阅读,如果你升级到2.5,很多事情都会破裂.

我想从2.4分开安装2.5,但我不知道该怎么做.到目前为止,我已经下载了源代码tarball,解压缩了它,然后做了一个./configure --prefix=/opt我希望它最终结束的地方.我现在可以make, make install吗?或者还有更多?

boe*_*rre 79

您也可以使用EPEL-repository,然后sudo yum install python26安装python 2.6

  • 如何使用EPEL:http://fedoraproject.org/wiki/EPEL/FAQ#howtouse - 但是如果它不是32位x86,请记得用你的拱门替换i386 (8认同)
  • 似乎 Python 2.6 不再存在于 epel 中。 (2认同)

Joy*_*abu 31

试试epel

wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
sudo rpm -ivh epel-release-5-4.noarch.rpm
sudo yum install python26
Run Code Online (Sandbox Code Playgroud)

python可执行文件将在 /usr/bin/python26

mkdir -p ~/bin
ln -s /usr/bin/python26 ~/bin/python
export PATH=~/bin:$PATH # Append this to your ~/.bash_profile for persistence
Run Code Online (Sandbox Code Playgroud)

现在,python命令将执行python 2.6


Mic*_*lon 28

当我遇到类似情况时,我通常会避免使用软件包管理器,特别是如果要破坏某些东西(即生产服务器)会很尴尬.相反,我会去Activestate并下载他们的二进制包:

https://www.activestate.com/activepython/downloads/

这是通过运行脚本来安装的,该脚本将所有内容放入文件夹中,而不会触及任何系统文件.实际上,您甚至不需要root权限来设置它.然后我将二进制文件的名称更改为apy26,将该文件夹添加到PATH的末尾并开始编码.如果您apy26 setup.py install使用virtualenv和easyinstall 安装软件包,那么您可以根据需要灵活地设置python环境,而无需触及系统标准python.

编辑...最近我做了一些工作来为Linux构建一个可移植的Python二进制文件,它应该在没有外部依赖关系的任何发行版上运行.这意味着可移植Python模块所需的任何二进制共享库都是构建的一部分,包含在tarball中并安装在Python的私有目录结构中.这样,您可以为应用程序安装Python,而不会干扰系统安装的Python.

我的github网站有一个构建脚本,已经在Ubuntu Lucid 10.04 LTS上进行了全面的32位和64位安装测试.我也是在Debian Etch上构建的,但是不久之前我无法保证我没有改变某些东西.最简单的方法是将Ubuntu Lucid选择放在虚拟机中,签出脚本,git clone git://github.com/wavetossed/pybuild.git然后运行脚本.

构建完成后,在任何最新的Linux发行版上使用tarball.将它移动到一个目录之外还有一点点皱纹/data1/packages/python272就是你必须patchelf在移动目录之前运行包含来设置解释器路径.这会影响任何二进制文件/data1/packages/python272/bin

所有这些都基于使用RUNPATH构建并复制依赖的共享库.即使脚本在几个文件中,它实际上是一个以/etc/rc.d目录的样式排列的长shell脚本.

  • 我不知道过去的许可证是什么,但不幸的是现在它不允许你在面向外部的服务器上使用ActivePython,除非你购买商业版($$$).https://www.activestate.com/compare-editions (4认同)
  • 为了避免使用包管理器破坏服务器,您依赖第三方提供商的脚本?呵呵 (2认同)

小智 26

无需做百胜或制作自己的RPM.python26从源头构建.

wget https://www.python.org/ftp/python/2.6.6/Python-2.6.6.tgz
tar -zxvf Python-2.6.6.tgz
cd Python-2.6.6
./configure && make && make install
Run Code Online (Sandbox Code Playgroud)

可能存在依赖性错误使用

yum install gcc cc
Run Code Online (Sandbox Code Playgroud)

添加安装路径(/usr/local/bin/python默认情况下)~/.bash_profile.

它不会破坏yum或任何其他依赖的东西python24.


Len*_*bro 24

不,就是这样.您可能希望确保已安装所有可选库头文件,以便以后不必重新编译它.它们列在我认为的文档中.

此外,如果您这样做,甚至可以在标准路径中安装它make altinstall.这样它就不会覆盖你当前的默认"python".

  • wget http://www.python.org/ftp/python/2.6.6/Python-2.6.6.tgz然后./configure他们做altinstall (4认同)

Kim*_*ais 12

Chris Lea为python26 RPMs提供了一个YUM存储库,它可以与CentOS上的很多管理工具所需的"本机"2.4共存.

至少对我有用的快速说明:

$ sudo rpm -Uvh http://yum.chrislea.com/centos/5/i386/chl-release-5-3.noarch.rpm
$ sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CHL
$ sudo yum install python26
$ python26
Run Code Online (Sandbox Code Playgroud)

  • 这在CentOS 5.4下无效:没有可用的python26包. (3认同)
  • 没有在CentOS 5.5上工作:缺少依赖性:libffi.so.5 (3认同)

ogg*_*ggy 3

如果您想让自己更轻松,网络上有针对新 Python 版本的 CentOS RPM。例如参见:

http://www.geekymedia.com/python_26_centos.html