2016-03-20 6 views
11

ich vor kurzem versucht, die Root-Umgebung meines Anaconda von Python 3.4 zu Python 3.5 mit dem Befehl installieren zu aktualisierenUneinheitliche Anaconda root env nach Python fehlgeschlagen 3.5 Update

conda install python=3.5 

Danach tun, lief ich

conda update --all python=3.5 

der Hoffnung, es würde alle anderen Pakete zu Python 3.5-Versionen aktualisieren, aber es funktioniert nicht mit der Fehlermeldung unter: (beachten sie, dass ich viele Pakete in der Mitte dieser Liste weggelassen)

The following specifications were found to be in conflict: 
    - backports_abc -> python 2.7*|3.4* 
    - certifi -> python 2.7*|3.4* 
    - colorama -> python 2.7*|3.4*|3.5* 
    - conda -> python 2.7*|3.4*|3.5* 
    - conda-env -> python 2.7*|3.4* 
    - decorator -> python 2.7*|3.4* 
    - django -> python 2.7*|3.4* 
    - ecdsa -> python 2.7*|3.4* 
    - flask -> python 2.7*|3.4* 
    - greenlet -> python 2.6*|2.7*|3.3*|3.4*|3.5* 
    - ipykernel -> python 2.7*|3.4* 

[...many more...] 

    - simplegeneric -> python 2.7*|3.4*|3.5* 
    - six -> python 2.7*|3.4* 
    - werkzeug -> python 2.7*|3.4* 
    - wheel -> python 2.7*|3.4* 
Use "conda info <package>" to see the dependencies for each package. 

Es scheint, dass ich jetzt meine Root-Umgebung vermasselt habe. Ich mag würde nur darin, alle Pakete deinstallieren, aber der Befehl

conda uninstall --all 

nur klagt:

Error: cannot remove current environment. deactivate and run conda remove again 

(natürlich kann ich nicht meine Umgebung deaktivieren, da ich bereits in der Wurzelumgebung bin .)

Gibt es also eine Möglichkeit, die Root-Umgebung auf einfache Weise zu bereinigen? Oder gibt es eine Möglichkeit, alle Pakete für Python 3.5 korrekt zu aktualisieren?

bearbeiten (5/10/2016)

Ich habe vergessen, die ursprünglich zu erwähnen, dass das System, das ich renne auf ist Mac OS X 10.11 (El Capitan).

Antwort

4

Nur these steps folgen eine Neuinstallation zu machen:

Entfernen Sie zuerst Ihren lokalen anaconda: sudo rm -rf anaconda

Dann installieren Sie es wieder von here

+1

Die von Matt vorgeschlagene Lösung funktioniert nicht. Das Problem hier ist, dass die neue Anaconda mit Abhängigkeiten strenger ist; daher wird 'conda update --all' bananen, um den Abhängigkeitsbaum zu reparieren. Das Beste ist, alles zu löschen und es wieder zu installieren – Perry

+0

Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen. Link-Only-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. – Nehal

+0

Ich habe ursprünglich auf eine Antwort gehofft, die mir sagen würde, wie ich meine Installation reparieren kann, anstatt einfach nur neu zu installieren. Aber basierend auf Ihrem Kommentar und den anderen Antworten sieht es so aus, als wäre eine Neuinstallation die einzige Option. Naja! – jb326

0

Ah ich bearbeite, als ich nicht wusste, dass Sie einen Mac hatten. Versuchen Sie diese Zeilen und sehen, was passiert:

conda update conda conda update conda python=3.5 conda update anaconda

Ich weiß, Sie schon den mittleren Teil lief, aber andere sagen, diese Sequenz die Wurzel auf 3,5 zurück setzt.

+0

Ich habe in meiner Frage vergessen zu erwähnen, dass das System, auf dem ich arbeite, ein Mac ist. (Entschuldigung!) Ich habe die Frage bearbeitet, um diese Informationen wiederzugeben. Ich habe auch Python 3.5-basierte Umgebungen, so dass sie funktionieren, aber ich hatte nur gehofft, dass es eine Möglichkeit geben würde, die Root-Umgebung ohne Neuinstallation zu aktualisieren. – jb326

+0

@ jb326 versuchen Sie das oben. – Matt

+0

Die ersten beiden Befehle haben nichts bewirkt, da 'conda' und' python' bereits die neuesten Versionen (4.0.5 bzw. 3.5.1) haben. Die letzte schlägt fehl, da ich das Meta-Paket "anaconda" nicht installiert habe. (Ich habe ursprünglich Miniconda anstelle der vollständigen Distribution installiert.) Dies deutet darauf hin, dass, obwohl 'python' und' conda' gut sind, die anderen Pakete irgendwie miteinander inkompatibel sind. – jb326

3

Nach this thread lesen, fand ich diese nützlichen Informationen:

Conda 4.0 ist viel vorsichtiger sicherzustellen, dass Umgebungen konsistent Abhängigkeiten. Frühere Versionen von Conda konnten Umgebungen in defekten Status verlassen, wenn es viele einmalige Installationen und Updates gab.

Ein Nebeneffekt ist, dass wir wahrscheinlich einen Aufwärtstrend bei Supportanfragen wie deins sehen werden, wo Conda einige überraschende Dinge tut, wie es schrittweise zerbrochene Umgebungen korrigiert.

Daher habe ich beschlossen, eine saubere Installation zu tun, die schließlich meine Probleme gelöst:

  1. entfernen Conda und anaconda

    1.1 Deaktivieren jedes aktive Umgebung

    conda info --envs

    source deactivate

    1,2 manuell entfernen die Ordner mit den Paketen und Code

    sudo rm -rf anaconda/

    sudo rm -rf conda/

  2. Installieren Conda und Anaconda (MiniConda)

    3.1 Laden Sie die installer herunter und installieren Sie sie gemäß den Anweisungen.

    3.2 Stellen Sie die korrekten Umgebungsvariablen sicher (optional). Fügen Sie diese Zeile export PATH=$HOME/anaconda/bin:$PATH in .bash_profile hinzu. Führen Sie dann source .bash_profile aus, damit die Änderungen wirksam werden. Überprüfen Sie mit which python und which pip, dass Ihr Python von Anaconda verwaltet wird.

  3. Installieren Sie Ihre Pakete

    4.1 Verwendung entweder conda oder pip sollte source

    4.2-Update arbeiten und aufzuräumen:

    conda update --all python=3.5

    conda clean --all

    4,2 Überprüfen Sie, ob überhaupt ything hat Recht:

    conda info

    conda list

Verwandte Themen