我通过运行安装了anaconda
bash Anaconda-2.2.0-Linux-x86_64.sh
在成功安装的Ubuntu 14.04系统上执行命令,然后要求我导出新的/home/username/anaconda/bin
$ PATH环境变量。
这样,我能够使用anaconda的所有功能,包括IDE的功能,以及成功使用所有基于conda的命令的功能。
下次我启动系统时,每个未键入的命令都会看到一个
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)
错误。(除python
特定命令外的所有命令)
在关注了一些stackexchange和askubuntu帖子之后,还注意到我$PYTHONPATH
已经设置为usr/local/lib/python2.7
,我试图
export PYTHONPATH=$PYTHONPATH:/home/username/anaconda/lib/python2.7
但这没有帮助。
这使我经历了软件包删除和重新安装的整个过程,当然还有大量的更新和升级,以尝试自己解决问题。
conda info -a
返回:
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
命令
which python
退货
/home/username/anaconda/bin/python
和
echo "$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
我知道这与设置路径变量的方式有关,特别是~/.bashrc
在其中Anaconda自动将我的/ home / username / anaconda / bin文件夹添加到$PATH
变量的情况下(这是在我第一次删除Anaconda之后的第二次安装期间发生的情况) )。
我没有在~/.profile
或中修改任何其他环境变量~/.bashrc
。
~/.bashrc
在重新启动之前,我已将导出$ PYTHONPATH行添加到我的行中。
Anaconda的所有功能现在都可以使用,尽管Fatal Python error: Py_Initialize: Unable to get the locale encoding
对于大多数错误键入的命令,始终会显示相同的错误,而不是通常的未知命令错误。
一旦找出原因,我将继续调查并编辑答案(或参考现有的答案,如果有的话)。
PYTHONPATH: /home/usrnme/anaconda/lib/python2.7:/usr/local/lib/python2.7
。如果要从〜/ .bashrc中删除PYTHONPATH:/ home / usrnme / anaconda ..行,则该错误仍然存在,Anaconda的任何功能都无法正常工作,直到我再次设置它。