J'ai installé anaconda en exécutant le
bash Anaconda-2.2.0-Linux-x86_64.sh
sur mon système Ubuntu 14.04, qui s'est installé avec succès, après quoi on m'a demandé d'exporter ma nouvelle /home/username/anaconda/bin
variable d'environnement $ PATH.
Ce faisant, j'ai pu utiliser toutes les fonctionnalités d'anaconda, y compris les IDE, ainsi que toutes les commandes basées sur conda.
La prochaine fois que j'ai démarré mon système, chaque commande manquée a vu un
Fatal Python error: Py_Initialize: Unable to get the locale encoding
File "/usr/local/lib/python2.7/encodings/__init__.py", line 123
raise CodecRegistryError,\
^
SyntaxError: invalid syntax
Aborted (core dumped)
Erreur. (Toutes les commandes sauf python
pour être spécifiques)
En suivant quelques messages stackexchange et askubuntu et en notant également que mon $PYTHONPATH
avait été défini sur usr/local/lib/python2.7
, j'ai essayé de
export PYTHONPATH=$PYTHONPATH:/home/username/anaconda/lib/python2.7
mais cela n'a pas aidé.
Cela m'a fait traverser toute une saga de suppressions et de réinstallations de packages, et bien sûr, de nombreuses mises à jour et mises à niveau, pour essayer de résoudre le problème par moi-même.
conda info -a
Retour:
CIO_TEST: <not set>
CONDA_DEFAULT_ENV: <not set>
CONDA_ENVS_PATH: <not set>
LD_LIBRARY_PATH: <not set>
PATH: /home/username/anaconda/bin:/home/username/Scala-sbt/sbt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/username/bin:/usr/local/java/jdk1.8.0_20/bin
PYTHONHOME: <not set>
PYTHONPATH: /usr/local/lib/python2.7:/home/username/anaconda/bin/python
La commande
which python
Retour
/home/username/anaconda/bin/python
et
echo "$PATH"
Retour
/home/username/anaconda/bin:/home/username/Scala-sbt/sbt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/username/bin:/usr/local/java/jdk1.8.0_20/bin
Je sais que cela a quelque chose à voir avec la façon dont je définis les variables de chemin, en particulier dans le ~/.bashrc
dossier dans lequel Anaconda a automatiquement ajouté mon dossier / home / username / anaconda / bin à la $PATH
variable (cela s'est produit lors d'une deuxième installation d'Anaconda après l'avoir supprimé en premier). ).
Je n'ai pas modifié toute autre variable d'environnement dans les deux ~/.profile
ou ~/.bashrc
.
J'ai ajouté la ligne d'exportation $ PYTHONPATH à mon ~/.bashrc
avant de redémarrer.
Toutes les fonctionnalités d'Anaconda fonctionnent maintenant, bien que la même Fatal Python error: Py_Initialize: Unable to get the locale encoding
erreur continue de s'afficher au lieu de l'erreur de commande inconnue habituelle, pour la plupart des commandes mal typées.
Je continuerai à examiner cela et à modifier ma réponse (ou à me référer aux réponses existantes, le cas échéant) dès que je découvrirai pourquoi cela se produit.
PYTHONPATH: /home/usrnme/anaconda/lib/python2.7:/usr/local/lib/python2.7
. Si je dois supprimer la ligne PYTHONPATH: / home / usrnme / anaconda .. de mon ~ / .bashrc, l'erreur persisterait et aucune des fonctionnalités d'Anaconda ne fonctionnerait jusqu'à ce que je la redéfinisse.