仅供参考,我在 macOS 10.15 上运行所有内容。
每当我运行任何 conda 命令时,我都会收到以下错误(例如):
(base) xxxx-xxxxx-xxxxx:xxxx xxxx$ conda --version
KeyError('pkgs_dirs')
Traceback (most recent call last):
File "/opt/anaconda3/lib/python3.7/site-packages/conda/exceptions.py", line 1124, in __call__
return func(*args, **kwargs)
File "/opt/anaconda3/lib/python3.7/site-packages/conda/cli/main.py", line 57, in main_subshell
p = generate_parser()
File "/opt/anaconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 41, in generate_parser
description='conda is a tool for managing and deploying applications,'
File "/opt/anaconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 117, in __init__
self._subcommands = context.plugin_manager.get_hook_results("subcommands")
File "/opt/anaconda3/lib/python3.7/site-packages/conda/base/context.py", line 422, in plugin_manager
from ..plugins.manager import get_plugin_manager
File "/opt/anaconda3/lib/python3.7/site-packages/conda/plugins/manager.py", line 9, in <module>
from . import solvers, virtual_packages
File "/opt/anaconda3/lib/python3.7/site-packages/conda/plugins/virtual_packages/__init__.py", line 5, in <module>
from . import archspec, cuda, linux, osx, windows
File "/opt/anaconda3/lib/python3.7/site-packages/conda/plugins/virtual_packages/cuda.py", line 3, in <module>
import ctypes
File "/opt/anaconda3/lib/python3.7/ctypes/__init__.py", line 7, in <module>
from _ctypes import Union, Structure, Array
ImportError: dlopen(/opt/anaconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libffi.6.dylib
Referenced from: /opt/anaconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so
Reason: image not found
在处理上述异常的过程中,又出现了一个异常:
Traceback (most recent call last):
File "/opt/anaconda3/lib/python3.7/site-packages/conda/exceptions.py", line 1244, in print_unexpected_error_report
message_builder.append(get_main_info_str(error_report['conda_info']))
File "/opt/anaconda3/lib/python3.7/site-packages/conda/cli/main_info.py", line 236, in get_main_info_str
info_dict['_' + key] = ('\n' + 26 * ' ').join(info_dict[key])
KeyError: 'pkgs_dirs'
$ /opt/anaconda3/bin/conda --version
environment variables:
conda info could not be constructed.
KeyError('pkgs_dirs')
无论我使用什么 conda 命令,我都会遇到这种错误,无论我使用
conda create --name new_env_name
还是 conda info --envs
都没有关系。这就是为什么我也无法卸载 anaconda 并重新安装它,因为我也无法使用必须用于卸载 anaconda 的 conda 命令,例如:conda install anaconda-clean
。我也无法打开 Anaconda Navigator,因为它会在我尝试打开它一秒钟后关闭。
在此错误之前,当一切或多或少工作正常时,我发现由于某种原因 python 2.7.X 安装在我的 conda env 中。所以我更新了 conda,然后更新了 python,因为在此之前由于导入错误我无法运行我的代码。在我更新 conda 之后,我上面解释的错误发生了,我觉得我的计算机安装 conda 的方式有问题。
我已经在谷歌和 github 存储库中搜索过,但我找不到任何帮助,因为我尝试的一切都不起作用。
好吧,这就是我自己发现的。显然,由于某种原因我最初安装 anaconda 时发生了什么,它安装在“~/opt”文件夹中。我不知道为什么会这样,我认为这通常不应该是这样。这就是为什么,当我更新 conda(这只是一个假设)时,安装没有得到正确处理,这不知何故破坏了一切。
我试图删除anaconda3文件夹,但我只有阅读权限。最后我的解决方案是在我的实际用户目录中安装 miniconda。我知道这不是一个很好的解决方案,但现在它又可以工作了,我不知道如何摆脱 opt-folder 中的 anaconda3 文件夹。
另外请记住,如果您遇到与我相同的错误消息,我的解决方案可能也不适合您,所以请不要只按照我所做的一步一步来。