it-swarm.com.de

Installieren Sie Python 2.6 in CentOS

Ich habe eine Shell, die CentOS betreibt.

Für ein Projekt, das ich mache, brauche ich Python 2.5+, aber centOS ist ziemlich abhängig von 2.4.

Nach dem, was ich gelesen habe, wird eine Reihe von Dingen kaputt gehen, wenn Sie ein Upgrade auf 2.5 durchführen.

Ich möchte 2.5 separat von 2.4 installieren, aber ich bin mir nicht sicher, wie es geht. Bis jetzt habe ich den Quell-Tarball heruntergeladen, entpackt und einen ./configure --prefix=/opt gemacht. Dort möchte ich, dass er endet. Kann ich jetzt nur noch make, make install? Oder gibt es noch mehr?

85
tehryan

Sie können auch das EPEL-Repository verwenden und dann Sudo yum install python26 zur Installation von Python 2.6 ausführen

79
boerre

Versuchen Sie es mit 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

Die ausführbare Python-Datei ist unter /usr/bin/python26 verfügbar.

mkdir -p ~/bin
ln -s /usr/bin/python26 ~/bin/python
export PATH=~/bin:$PATH # Append this to your ~/.bash_profile for persistence

Der Befehl python führt nun python 2.6 aus.

31
Joyce Babu

Wenn ich in ähnliche Situationen geraten bin, vermeide ich generell den Paketmanager, insbesondere wenn es peinlich wäre, etwas kaputtzumachen, d. H. Einen Produktionsserver. Stattdessen würde ich zu Activestate gehen und ihr Binärpaket herunterladen:

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

Dies wird durch Ausführen eines Skripts installiert, das alles in einem Ordner ablegt und keine Systemdateien berührt. Tatsächlich benötigen Sie nicht einmal root-Berechtigungen, um es einzurichten. Dann ändere ich den Namen der Binärdatei in etwas wie apy26, füge den Ordner am Ende des PFADs hinzu und starte die Codierung. Wenn Sie Pakete mit apy26 setup.py install installieren oder wenn Sie virtualenv und easyinstall verwenden, haben Sie eine Python-Umgebung genauso flexibel, wie Sie benötigen, ohne den Systemstandard Python zu berühren.

Bearbeitungen ....__ In letzter Zeit habe ich einige Arbeit beim Erstellen einer portablen Python-Binärdatei für Linux durchgeführt, die auf einer beliebigen Distribution ohne externe Abhängigkeiten laufen sollte. Dies bedeutet, dass alle gemeinsam genutzten binären Bibliotheken, die vom tragbaren Python-Modul benötigt werden, Bestandteil des Builds sind, im Tarball enthalten und in der privaten Verzeichnisstruktur von Python installiert sind. Auf diese Weise können Sie Python für Ihre Anwendung installieren, ohne das installierte Python-System zu beeinträchtigen.

Meine github-Site hat ein Build-Skript, das auf Ubuntu Lucid 10.04 LTS sowohl 32- als auch 64-Bit-Installationen gründlich getestet wurde. Ich habe es auch auf Debian Etch aufgebaut, aber das war vor einiger Zeit und ich kann nicht garantieren, dass ich nichts geändert habe. Der einfachste Weg, dies zu tun, besteht darin, Ubuntu Lucid einfach in eine virtuelle Maschine zu legen, das Skript mit git clone git://github.com/wavetossed/pybuild.git auszuchecken und dann das Skript auszuführen. 

Sobald Sie es erstellt haben, können Sie den Tarball für alle aktuellen Linux-Distributionen verwenden. Es gibt eine kleine Falte beim Verschieben in ein anderes Verzeichnis als /data1/packages/python272. Dies bedeutet, dass Sie die enthaltene patchelf ausführen müssen, um den Interpreterpfad festzulegen, BEVOR Sie das Verzeichnis verschieben. Dies betrifft alle Binärdateien in /data1/packages/python272/bin.

All dies basiert auf dem Erstellen mit RUNPATH und dem Kopieren der abhängigen gemeinsam genutzten Bibliotheken. Obwohl sich das Skript in mehreren Dateien befindet, handelt es sich praktisch um ein langes Shell-Skript, das im Stil von /etc/rc.d-Verzeichnissen angeordnet ist.

28
Michael Dillon

Keine Notwendigkeit, Yum zu machen oder eigene RPM zu erstellen. Erstellen Sie python26 von der Quelle.

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

Es kann einen Abhängigkeitsfehler use geben 

yum install gcc cc

Fügen Sie den Installationspfad (standardmäßig /usr/local/bin/python) zu ~/.bash_profile hinzu.

yum oder andere Dinge, die von python24 abhängig sind, werden nicht beschädigt.

26
Rahul Arora

Nein das war's. Möglicherweise möchten Sie auch sicherstellen, dass alle optionalen Library-Header installiert sind, damit Sie diese später nicht erneut kompilieren müssen. Sie sind in der Dokumentation aufgeführt, denke ich.

Sie können es auch im Standardpfad installieren, wenn Sie make altinstall ausführen. Auf diese Weise wird der aktuelle Standard "Python" nicht überschrieben.

24
Lennart Regebro

Chris Lea bietet ein YUM-Repository für Python26-RPMs, das zusammen mit dem 'nativen' 2.4 existieren kann, das für einige Verwaltungstools auf CentOS benötigt wird.

Schnelle Anweisungen, die zumindest für mich funktionierten:

$ 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
12
Kimvais

Wenn Sie Ihre Python-Version installieren (in diesem Fall ist es Python2.6), geben Sie diesen Befehl ein, um Ihre virtualenv zu erstellen:

virtualenv -p /usr/bin/python2.6 /your/virtualenv/path/here/
3
user1427258

Wenn Sie es sich selbst erleichtern möchten, gibt es CentOS-RPMs für neue Python-Versionen, die im Netz schweben. Z.B. sehen:

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

3
oggy

Spät zur Party, aber das OP sollte mit Buildout oder Virtualenv gegangen sein und das Problem komplett umgangen haben.

Ich arbeite derzeit an einem Centos-Server. Nun, es wäre ein richtiger Begriff, wegzuarbeiten, und ich kann jedem versichern, dass ich nur die Tränen zurückhalten kann, während ich die Software-Äquivalente feuergehärteter Speere verwende. 

2
chiggsy
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

für DOS, die einfach nicht wissen: =)

1
Cheap VPN
1
rytis
1
lykich
# yum groupinstall "Development tools"
# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel

Python 3.3.0 herunterladen und installieren

# 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 herunterladen und installieren

# 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

Virtualenv für Python 3.3 installieren und verwenden

# 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
1
Moddasir Khan

Geben Sie auf dem Terminal die folgenden Befehle ein, um Python 3.6 unter CentOS 7 zu installieren:

$ Sudo yum install https://centos7.iuscommunity.org/ius-release.rpm

Dann mach :

$ Sudo yum install python36u 

Sie können auch eine beliebige Version anstelle von 3.6 installieren (wenn Sie möchten), indem Sie einfach 36 durch Ihre Versionsnummer ersetzen. 

0

Ich habe die ursprüngliche Version von Python (2.6.6) deinstalliert und 2.7 installiert (mit der Option make && make altinstall), aber als ich etwas mit yum installierte, funktionierte es nicht.

Also habe ich dieses Problem wie folgt gelöst:

  1. # ln -s /usr/local/bin/python /usr/bin/python
  2. Laden Sie das RPM-Paket python-2.6.6-36.el6.i686.rpm von http://rpm.pbone.net/index.php3/stat/4/idpl/20270470/dir/centos_6/com/python- herunter. 2.6.6-36.el6.i686.rpm.html
  3. Als root ausführen rpm -Uvh python-2.6.6-36.el6.i686.rpm

Erledigt

0
user2544607