为什么Anaconda来源激活不存在?

时间:2015-11-02 22:19:35

标签: python macos anaconda

我在Anaconda中成功创建了两个独立的Python环境,但似乎无法激活其中任何一个。我试图在Stackoverflow上尽可能多地阅读这个主题,但没有解决方案确实解决了我的问题。我在此问题中添加了评论所要求的信息(Anaconda Environment Doesnt activate)。

尝试激活环境时,控制台输出为-bash: activate: No such file or directory

which conda的输出为/Users/username/anaconda3/bin/condatype source的输出为source is a shell builtin。 尝试which activate时,shell不返回任何内容。

在我的bin文件夹中,我似乎也没有activate可执行文件,只有一个名为activate-global-python-argcomplete的文件。

为什么我缺少标准的激活文件以及如何最好地解决此问题?

8 个答案:

答案 0 :(得分:5)

我认为您碰巧安装了一个快速修补的anaconda版本。

conda update conda

应该让你恢复正常运行。

答案 1 :(得分:5)

我遇到了类似的问题。就我而言,问题与使用tcsh有关,但activate仅支持bashzsh

您可以使用该命令检查当前使用的shell echo $0

您必须使用兼容的shell才能使用source activate命令。

答案 2 :(得分:2)

启动新终端并重试。或者,键入row并查看是否有帮助。

答案 3 :(得分:2)

不要这样做!!!,这打破了我的dnf

首先,我尝试将源指向激活文件,

source /usr/lib64/python3.6/venv/scripts/common/activate environment

这似乎有效,但没有更新实际值。我尝试了mattexx的答案,但它抱怨conda没有安装,所以我用过。

conda install conda

我必须拥有root权限,因为它已安装到root环境,但之后一切似乎都有效。

这就是破坏我的fedora安装的原因

答案 4 :(得分:1)

tcsh对我来说是个问题。改为bash,一切正常。

答案 5 :(得分:1)

我的问题是文件/opt/pycharm/plugins/terminal/.zshrc(使用ZSH)包含行source $JEDITERM_SOURCE。该变量包含正确的路径作为两个参数<path-to-anaconda-activate>/activate <path-to-anaconda>,但显然它们被解释为单个参数:<path-to-anaconda-activate>/activate <path-to-anaconda>

我解决了将eval添加到该行之前,使其成为eval source $JEDITERM_SOURCE。现在,变量正确扩展。

如果您正在使用bash,请对/opt/pycharm/plugins/terminal/jediterm-bash.in进行相同的更改。

答案 6 :(得分:1)

在这种情况下,问题可能是虚拟环境是在/Users/username/anaconda3/envs/中创建的,因此激活将在: /Users/username/anaconda3/envs/NAME_OF_YOUR_VIRTUAL_ENV/bin/activate

因此,要激活您可以运行的环境:
source /Users/username/anaconda3/envs/NAME_OF_YOUR_VIRTUAL_ENV/bin/activate

答案 7 :(得分:0)

我在pycharm中使用bash shell并通过进行此更改来解决问题:

Momocs

基本上按https://stackoverflow.com/users/1564931/netchkin进行上述建议的相同更改,但[~/opt/pycharm-community/plugins/terminal]$ diff jediterm-bash.in.old jediterm-bash.in 65c65 < source "$JEDITERM_SOURCE" --- > eval source "$JEDITERM_SOURCE"

这修复了我现有的项目。但是,任何新项目似乎都没有尝试激活conda环境。似乎在Pycharm 2017.1.2中创建的新项目在终端插件中启动会话时没有设置~/opt/pycharm-community/plugins/terminal/jediterm-bash.in变量。

https://youtrack.jetbrains.com/issue/PY-23417

上有一个未解决的问题

看起来版本4.4.0中的conda激活脚本发生了很大的变化。见https://conda.io/docs/release-notes.html。如果我将conda降级到4.3.34那么我可以让conda虚拟环境再次在pycharm终端中工作。