Wie installiere ich die neueste Python-Version separat auf Debian oder aktualisiere sie?

35

Ich bin immer noch neu in Linux, daher versuche ich immer noch zu verstehen, wo sich ausführbare Dateien und ihre Bibliotheken befinden und wie Pakete installiert werden. Daher habe ich Debian Wheezy 7.3 mit den folgenden Python-Versionen:

  • Python 2.7.3 (Standard)
  • Python 2.6.8

Im Verzeichnis /usr/bin/befinden sich also die folgenden Dateien, die ich vom Terminal aus aufrufen kann:

  • Python (das ist ein Link zu Python2.7)
  • python2 (auch ein Link zu python2.7)
  • python2.6 (ausführbare Datei für Python 2.6.8)
  • python2.7 (ausführbare Datei von Python 2.7.3)

und in /usr/lib/den Hauptordnern:

  • python2.6
  • python2.7

Derzeit ist die neueste Version von Python 2.7.6, die ich installieren möchte, aber ich weiß nicht wie. Ich habe versucht, apt-get zu verwenden:

apt-get install python

es gibt aus python is already the newest version..

Wie kann ich die neueste Version von Python installieren? auf der Download - Seite Python gibt es den Tarball, wie kann ich das verwendet Sie es wie mit einer anderen Ordner in separat zu installieren , /usr/lib/wie python2.7.6und macht pythonLink in /usr/bin/Punkt auf die neue ausführbare Datei, oder vielleicht die aktuelle Version aktualisieren , wenn es nichts brechen .

Pierre
quelle
Sie könnten Python 2.7.6 aus testing / unstable zurückportieren und Ihre aktuelle Version 2.7.3 durch diese ersetzen. Dies wird höchstwahrscheinlich keine Probleme verursachen. In diesem Fall können Sie problemlos zurückkehren.
Faheem Mitha
Ich habe es nicht einmal installiert, Debian neu installiert und "python" über die Befehlszeile eingegeben, und ich bin in der python3-Shell.
Frozenjim

Antworten:

16

Sie vermutlich suchen virtualenvoder pyenvoder ein anderes nicht-systemweite Methode Python zu installieren. Die Methode, die APT (Advance Package Tool) und verwendet dpkg, stellt sicher, dass alle Teile des Systems in Harmonie funktionieren, sodass Sie möglicherweise Python in einem separaten Pfad installieren möchten, der von allen anderen Programmen, die Sie nach Belieben aufrufen können, verborgen ist der Zweck pyenv/ virtualenv. Hier erfahren Sie, wie Sie die neueste Version von Python installieren, ohne das System zu beschädigen .

Übrigens, Sie können die neueste Version von Python, die Debian in Madison verwendet , herausfinden , während die neueste Version von Python 2 zum jetzigen Zeitpunkt die ist, auf die Sie hingewiesen haben:

  ~  apt-cache policy python
python:
  Installed: 2.7.5-5
  Candidate: 2.7.5-5
  Version table:
 *** 2.7.5-5 0
        500 http://ftp.us.debian.org/debian/ testing/main i386 Packages
        100 /var/lib/dpkg/status

(Pythonbrew wird nicht mehr gepflegt).

Braiam
quelle
ok Ich habe pip und virtualenv als root installiert. Wie kann ich eine virtuelle Umgebung mit einer neuen Python-Version erstellen? Soweit ich weiß, muss die neue Version zuerst installiert werden, oder?
Pierre
1
@ Peter Ich denke, dass der erste Schritt ist pyenv install 2.7.6. Sie können alle Versionen mitpyenv install -l
Braiam
27

Ok, nach langem Suchen habe ich beschlossen, Python aus dem Quellcode zu erstellen. Deshalb habe ich den komprimierten Quellcode-Tarball von der Python-Download-Seite heruntergeladen . Jetzt müssen wir das build-essentialPaket installieren , um die Quelldateien kompilieren zu können:

apt-get install build-essential

Außerdem müssen wir diese Entwicklungspakete installieren, die für einige Python-Module erforderlich sind:

libbz2-dev
libsqlite3-dev
libreadline-dev
zlib1g-dev
libncurses5-dev
libssl-dev
libgdbm-dev

Als nächstes extrahieren wir die heruntergeladene Quelldatei:

tar zxf Python-2.7.6.tgz

dann wir cdin das extrahierte Verzeichnis:

cd Python-2.7.6

und befolgen Sie die Anweisungen in den Python-Dokumenten :

./configure --prefix=/opt/python
make
make install # <- in the docs but don't execute: use checkinstall

Ich habe mich dazu entschlossen, es in dem zuvor erstellten Verzeichnis zu installieren. /opt/pythonAußerdem habe ich mit dem checkinstall- Paket eine .deb-Datei erstellt, damit ich es später leicht deinstallieren kann. Deshalb installieren wir es zuerst:

apt-get install checkinstall

und ersetze die letzte Zeile make installmit:

checkinstall

Jetzt habe ich eine neue Python-Installation in /opt/python/lib/python2.7und die Binärdatei ist in /opt/python/bin/python2.7.

Jetzt kann ich in der Befehlszeile ausführen /opt/python/bin/python2.7, um diese Python-Version zu verwenden. Außerdem können wir einen Link zu dieser ausführbaren Datei erstellen, sodass wir nicht den vollständigen Pfad eingeben, sondern ihn benennen python2.7.6.

ln -s /opt/python/bin/python2.7 /usr/local/bin/python2.7.6

Das Verzeichnis /opt/python/binenthält später auch andere ausführbare Dateien wie pipund virtualenvalle anderen Module, die Sie installieren, damit wir sie der Umgebungsvariablen PATH ~/.profilehinzufügen , bearbeiten und diese Zeile hinzufügen können:

PATH="$PATH:/opt/python/bin"

und Renn:

source ~/.profile

Ich habe den Pfad an das Ende angehängt, weil er ausführbare Namen enthält, wie die in /usr/binlike python, python2und python2.7deshalb behalten wir die höhere Priorität für /usr/bin.

Pierre
quelle
Würdest du nun zufällig wissen, wie du deinen neuen Python so konfigurierst, dass Module angezeigt werden, die über apt-get installiert wurden?
Elsurudo
Leider für Python 2.6 funktioniert das Kompilieren aus dem Quellcode unter Debian 8 (Jessie) nicht richtig, aber ich fand, zumindest für einen Raspberry Pi, dass ich ältere Pakete von packages.debian.org verwenden konnte . Vorausgesetzt, Build-Essentials sind bereits vorhanden, lautet die Reihenfolge etwa libdb, python2.6-minimal, python2.6, libpython2.6, python2-6-dev, aber dpkg -iSie erfahren, was benötigt wird.
Charlie Clark
1
@elsurudo Das wäre eigentlich nicht sinnvoll, da die Module in Ihrer neuen Version möglicherweise nicht mehr unterstützt werden. Wenn Sie die vollständige Kontrolle über Python haben möchten (wie beim Kompilieren aus dem Quellcode), sollten Sie Module auch separat installieren.
Tripleee
-1

Sie können verwenden:

aptitude install python3.5  

Wenn Sie Aptitude noch nicht installiert haben, können Sie es folgendermaßen installieren:

apt-get install aptitude
John
quelle