在CentOS中安装python 2.6
我有一个运行CentOS的shell。
对于我正在做的项目,我需要python 2.5+,但是centOS相当依赖于2.4。
从我读过的内容来看,如果升级到2.5,许多事情都会中断。
我想从2.4单独安装2.5,但我不知道如何做到这一点。 到目前为止,我已经下载了源代码压缩包,解压缩了,然后做了一个./configure --prefix=/opt
,这是我想要的结果。 我现在可以make, make install
吗? 还是有更多?
您也可以使用EPEL-repository ,然后执行sudo yum install python26
来安装python 2.6
尝试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
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
现在, python
命令将执行python 2.6
当我遇到类似的情况时,我通常会避免包pipe理器,特别是如果打破某些东西,例如生产服务器,会让人感到尴尬。 相反,我会去Activestate并下载他们的二进制包:
https://www.activestate.com/activepython/downloads/
这是通过运行一个脚本,将所有内容放入一个文件夹并且不会触及任何系统文件来安装的。 事实上,你甚至不需要root权限来设置它。 然后,我将二进制文件的名称改为apy26,将该文件夹添加到PATH的末尾,然后开始编码。 如果您使用apy26 setup.py install
安装软件包,或者如果您使用virtualenv和easyinstall,那么您可以根据需要灵活使用python环境,而无需触摸系统标准python。
编辑…最近,我做了一些工作来构build一个可移植的Linux二进制Python二进制文件,它应该可以在任何没有外部依赖的发行版上运行。 这意味着可移植Python模块所需的任何二进制共享库都是构build的一部分,包含在tarball中,并安装在Python的私有目录结构中。 这样,您可以在不干扰系统安装的Python的情况下为您的应用程序安装Python。
我的github网站有一个构build脚本,已经在Ubuntu Lucid 10.04 LTS上进行了全面testing,包括32位和64位安装。 我也在Debian Etch上build立了它,但是那是前一阵子,我不能保证我没有改变什么。 最简单的方法就是把你的Ubuntu Lucid选到虚拟机上,用git clone git://github.com/wavetossed/pybuild.git
检查脚本,然后运行脚本。
一旦build好了,在最新的Linux发行版上使用tarball。 将它移动到/data1/packages/python272
patchelf
以外的目录有一点小问题,那就是在移动目录之前,必须运行包含的patchelf
来设置解释器path。 这会影响/data1/packages/python272/bin
任何二进制文件
所有这些都基于使用RUNPATH构build和复制相关的共享库。 即使脚本是在多个文件中,它实际上也是一个以/etc/rc.d目录的风格排列的长shell脚本。
不,就是这样。 您可能要确保安装了所有可选的库头文件,以便以后不必重新编译它。 他们列在我认为的文件中。
另外,如果你make altinstall
,你甚至可以在标准path上安装它。 这样它就不会覆盖你当前的默认“python”。
没有必要做百胜或做你自己的RPM。 从源代码构buildpython26
。
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
可以有一个依赖错误使用
yum install gcc cc
将安装path(默认为/usr/local/bin/python
)添加到~/.bash_profile
。
它不会破坏yum
或任何其他依赖于python24
东西。
Chris Lea为python26 RPM提供了一个YUM仓库,可以与CentOS上的很多pipe理工具所需的“native 2.4”共存。
快速说明,至less对我来说:
$ 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
如果你想让自己变得更容易,那么新的Python版本的CentOS RPM就会在networking上浮动。 例如见:
当你安装你的python版本(在这种情况下,它是python2.6),然后发出这个命令来创build你的virtualenv
:
virtualenv -p /usr/bin/python2.6 /your/virtualenv/path/here/
派对晚了,但OP本来应该跟着Buildout或者Virtualenv走 ,并且完全避开了这个问题。
我目前正在做一个Centos服务器,好吧,辛苦了,这将是一个合适的术语,我可以向大家保证,我能够使用相当于消防强化矛的软件闪回眼泪的唯一方式就是扩展。
缺less依赖关系:libffi.so.5在这里:
rpm -Uvh http://yum.chrislea.com/centos/5/i386/chl-release-5-3.noarch.rpm rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CHL rpm -Uvh ftp://ftp.pbone.net/mirror/centos.karan.org/el5/extras/testing/i386/RPMS/libffi-3.0.5-1.el5.kb.i386.rpm yum install python26 python26
对于只是不知道的dos:=)
# yum groupinstall "Development tools" # yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
下载并安装Python 3.3.0
# wget http://python.org/ftp/python/3.3.0/Python-3.3.0.tar.bz2 # tar xf Python-3.3.0.tar.bz2 # cd Python-3.3.0 # ./configure --prefix=/usr/local # make && make altinstall
下载并安装Distribute for Python 3.3
# wget http://pypi.python.org/packages/source/d/distribute/distribute-0.6.35.tar.gz # tar xf distribute-0.6.35.tar.gz # cd distribute-0.6.35 # python3.3 setup.py install
安装和使用Python 3.3的virtualenv
# easy_install-3.3 virtualenv # virtualenv-3.3 --distribute otherproject New python executable in otherproject/bin/python3.3 Also creating executable in otherproject/bin/python Installing distribute...................done. Installing pip................done. # source otherproject/bin/activate # python --version Python 3.3.0
我unistalled原始版本的python(2.6.6)并安装2.7(与选项make && make altinstall
),但是当我尝试安装与yum的东西没有工作。
所以我解决了这个问题如下:
-
# ln -s /usr/local/bin/python /usr/bin/python
- 从http://rpm.pbone.net/index.php3/stat/4/idpl/20270470/dir/centos_6/com/python-2.6下载RPM软件包python-2.6.6-36.el6.i686.rpm 。 6-36.el6.i686.rpm.html
- 以root用户执行
rpm -Uvh python-2.6.6-36.el6.i686.rpm
完成
- bash:mkvirtualenv:找不到命令
- CentOS:在PHP安装中启用GD支持
- CentOS 64位错误的ELF解释器
- httpd:无法可靠地确定服务器的完全限定的域名,使用ServerName的127.0.0.1
- nohup:忽略input并将输出追加到“nohup.out”
- meteor:意外的芒戈退出代码100
- 无法更改stream浪主文件夹内的文件夹的权限
- 缺less单独的debuginfos,请使用:debuginfo-install glibc-2.12-1.47.el6_2.9.i686 libgcc-4.4.6-3.el6.i686 libstdc ++ – 4.4.6-3.el6.i686
- 如何从源码升级CentOS 6.5 / Linux / Unix中的OpenSSL?