由于"KeyError('pkgs_dirs')"和缺少 DLL,Conda 的全新安装不起作用



我安装了一个新版本的Miniconda,但无论我尝试做什么(在Anaconda中安装新模块:Keyerror(';pkgs_dirs';,(,下载我们软件包的错误(Keyerror:';pkgs_dirs';(,更改conda默认的pkgs_dir和envs-dirs(安装软件包或读取conda信息似乎都不起作用。

尝试运行时会引发异常,例如conda install -c anaconda cudatoolkit=10.1。新安装(因为这是新安装(也没有帮助。所有命令都是在Windows 10上的Miniconda终端上运行的,MS Redistributables已按默认设置安装(系统已重新启动(。我看不到缺少哪些DLL,因为我唯一能用我的单个脑细胞看到的是"DLL";外壳";。我遵循了中的安装说明https://www.tensorflow.org/install/pip#windows.

condarc文件内容如下:

envs_dirs:
- 'C:Usersmatti.condaenvs'
pkgs_dirs:
- 'C:Usersmatti.condapkgs'

envs目录不存在,但pkgs目录存在。因此,我还尝试创建目录";envs";没有成功的

尝试安装程序包时引发错误:

Collecting package metadata (current_repodata.json): failed
WARNING conda.exceptions:print_unexpected_error_report(1216): KeyError('pkgs_dirs')
Traceback (most recent call last):
File "C:ProgramDataMiniconda3libsite-packagescondaexceptions.py", line 1082, in __call__
return func(*args, **kwargs)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain.py", line 87, in _main
exit_code = do_call(args, p)
File "C:ProgramDataMiniconda3libsite-packagescondacliconda_argparse.py", line 84, in do_call
return getattr(module, func_name)(args, parser)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain_install.py", line 20, in execute
install(args, parser, 'install')
File "C:ProgramDataMiniconda3libsite-packagescondacliinstall.py", line 260, in install
unlink_link_transaction = solver.solve_for_transaction(
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 152, in solve_for_transaction
unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier,
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 195, in solve_for_diff
final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned,
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 300, in solve_final_state
ssc = self._collect_all_metadata(ssc)
File "C:ProgramDataMiniconda3libsite-packagescondacommonio.py", line 88, in decorated
return f(*args, **kwds)
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 463, in _collect_all_metadata
index, r = self._prepare(prepared_specs)
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 1058, in _prepare
reduced_index = get_reduced_index(self.prefix, self.channels,
File "C:ProgramDataMiniconda3libsite-packagescondacoreindex.py", line 288, in get_reduced_index
new_records = SubdirData.query_all(spec, channels=channels, subdirs=subdirs,
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 140, in query_all
result = tuple(concat(executor.map(subdir_query, channel_urls)))
File "C:ProgramDataMiniconda3libconcurrentfutures_base.py", line 609, in result_iterator
yield fs.pop().result()
File "C:ProgramDataMiniconda3libconcurrentfutures_base.py", line 446, in result
return self.__get_result()
File "C:ProgramDataMiniconda3libconcurrentfutures_base.py", line 391, in __get_result
raise self._exception
File "C:ProgramDataMiniconda3libconcurrentfuturesthread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 132, in <lambda>
subdir_query = lambda url: tuple(SubdirData(Channel(url), repodata_fn=repodata_fn).query(
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 145, in query
self.load()
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 210, in load
_internal_state = self._load()
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 375, in _load
raw_repodata_str = fetch_repodata_remote_request(
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 701, in fetch_repodata_remote_request
resp = session.get(join_url(url, filename), headers=headers, proxies=session.proxies,
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestssessions.py", line 555, in get
return self.request('GET', url, **kwargs)
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestssessions.py", line 528, in request
prep = self.prepare_request(req)
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestssessions.py", line 456, in prepare_request
p.prepare(
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestsmodels.py", line 320, in prepare
self.prepare_auth(auth, url)
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestsmodels.py", line 551, in prepare_auth
r = auth(self)
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysconnectionsession.py", line 110, in __call__
request.url = CondaHttpAuth.add_binstar_token(request.url)
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysconnectionsession.py", line 134, in add_binstar_token
for binstar_url, token in iteritems(read_binstar_tokens()):
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysanaconda_client.py", line 35, in read_binstar_tokens
token_dir = _get_binstar_token_directory()
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysanaconda_client.py", line 30, in _get_binstar_token_directory
return AppDirs('binstar', 'ContinuumIO').user_data_dir
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 245, in user_data_dir
return user_data_dir(self.appname, self.appauthor,
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 67, in user_data_dir
path = os.path.join(_get_win_folder(const), appauthor, appname)
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 284, in _get_win_folder_with_pywin32
from win32com.shell import shellcon, shell
ImportError: DLL load failed while importing shell: The specified procedure could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:ProgramDataMiniconda3libsite-packagescondaexceptions.py", line 1214, in print_unexpected_error_report
message_builder.append(get_main_info_str(error_report['conda_info']))
File "C:ProgramDataMiniconda3libsite-packagescondaclimain_info.py", line 237, in get_main_info_str
info_dict['_' + key] = ('n' + 26 * ' ').join(info_dict[key])
KeyError: 'pkgs_dirs'
# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
File "C:ProgramDataMiniconda3libsite-packagescondaexceptions.py", line 1082, in __call__
return func(*args, **kwargs)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain.py", line 87, in _main
exit_code = do_call(args, p)
File "C:ProgramDataMiniconda3libsite-packagescondacliconda_argparse.py", line 84, in do_call
return getattr(module, func_name)(args, parser)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain_install.py", line 20, in execute
install(args, parser, 'install')
File "C:ProgramDataMiniconda3libsite-packagescondacliinstall.py", line 260, in install
unlink_link_transaction = solver.solve_for_transaction(
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 152, in solve_for_transaction
unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier,
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 195, in solve_for_diff
final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned,
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 300, in solve_final_state
ssc = self._collect_all_metadata(ssc)
File "C:ProgramDataMiniconda3libsite-packagescondacommonio.py", line 88, in decorated
return f(*args, **kwds)
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 463, in _collect_all_metadata
index, r = self._prepare(prepared_specs)
File "C:ProgramDataMiniconda3libsite-packagescondacoresolve.py", line 1058, in _prepare
reduced_index = get_reduced_index(self.prefix, self.channels,
File "C:ProgramDataMiniconda3libsite-packagescondacoreindex.py", line 288, in get_reduced_index
new_records = SubdirData.query_all(spec, channels=channels, subdirs=subdirs,
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 140, in query_all
result = tuple(concat(executor.map(subdir_query, channel_urls)))
File "C:ProgramDataMiniconda3libconcurrentfutures_base.py", line 609, in result_iterator
yield fs.pop().result()
File "C:ProgramDataMiniconda3libconcurrentfutures_base.py", line 446, in result
return self.__get_result()
File "C:ProgramDataMiniconda3libconcurrentfutures_base.py", line 391, in __get_result
raise self._exception
File "C:ProgramDataMiniconda3libconcurrentfuturesthread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 132, in <lambda>
subdir_query = lambda url: tuple(SubdirData(Channel(url), repodata_fn=repodata_fn).query(
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 145, in query
self.load()
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 210, in load
_internal_state = self._load()
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 375, in _load
raw_repodata_str = fetch_repodata_remote_request(
File "C:ProgramDataMiniconda3libsite-packagescondacoresubdir_data.py", line 701, in fetch_repodata_remote_request
resp = session.get(join_url(url, filename), headers=headers, proxies=session.proxies,
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestssessions.py", line 555, in get
return self.request('GET', url, **kwargs)
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestssessions.py", line 528, in request
prep = self.prepare_request(req)
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestssessions.py", line 456, in prepare_request
p.prepare(
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestsmodels.py", line 320, in prepare
self.prepare_auth(auth, url)
File "C:UsersmattiAppDataRoamingPythonPython39site-packagesrequestsmodels.py", line 551, in prepare_auth
r = auth(self)
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysconnectionsession.py", line 110, in __call__
request.url = CondaHttpAuth.add_binstar_token(request.url)
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysconnectionsession.py", line 134, in add_binstar_token
for binstar_url, token in iteritems(read_binstar_tokens()):
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysanaconda_client.py", line 35, in read_binstar_tokens
token_dir = _get_binstar_token_directory()
File "C:ProgramDataMiniconda3libsite-packagescondagatewaysanaconda_client.py", line 30, in _get_binstar_token_directory
return AppDirs('binstar', 'ContinuumIO').user_data_dir
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 245, in user_data_dir
return user_data_dir(self.appname, self.appauthor,
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 67, in user_data_dir
path = os.path.join(_get_win_folder(const), appauthor, appname)
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 284, in _get_win_folder_with_pywin32
from win32com.shell import shellcon, shell
ImportError: DLL load failed while importing shell: The specified procedure could not be found.
`$ C:ProgramDataMiniconda3Scriptsconda-script.py install -c anaconda cudatoolkit=10.1`
environment variables:
conda info could not be constructed.
KeyError('pkgs_dirs') 

许多地方似乎都提到运行conda info会有所帮助,但即使这样也会引发一个错误:

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
File "C:ProgramDataMiniconda3libsite-packagescondaexceptions.py", line 1082, in __call__
return func(*args, **kwargs)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain.py", line 87, in _main
exit_code = do_call(args, p)
File "C:ProgramDataMiniconda3libsite-packagescondacliconda_argparse.py", line 84, in do_call
return getattr(module, func_name)(args, parser)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain_info.py", line 317, in execute
info_dict = get_info_dict(args.system)
File "C:ProgramDataMiniconda3libsite-packagescondaclimain_info.py", line 164, in get_info_dict
envs_dirs=context.envs_dirs,
File "C:ProgramDataMiniconda3libsite-packagescondabasecontext.py", line 517, in envs_dirs
return mockable_context_envs_dirs(self.root_writable, self.root_prefix, self._envs_dirs)
File "C:ProgramDataMiniconda3libsite-packagescondabasecontext.py", line 91, in mockable_context_envs_dirs
fixed_dirs += join(user_data_dir(APP_NAME, APP_NAME), 'envs'),
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 67, in user_data_dir
path = os.path.join(_get_win_folder(const), appauthor, appname)
File "C:ProgramDataMiniconda3libsite-packagesconda_vendorappdirs.py", line 284, in _get_win_folder_with_pywin32
from win32com.shell import shellcon, shell
ImportError: DLL load failed while importing shell: The specified procedure could not be found.
`$ C:ProgramDataMiniconda3Scriptsconda-script.py info` 

也许有点晚了,但windows上的这个错误应该与pywin32包有关。解决方案是重新安装此程序包。您可以在基本环境中运行以下命令:

conda install -n name-your-environment -c anaconda pywin32

如果env变量"子分区";尚未在本地.condarc文件中设置,也可能会弹出此错误。

添加或创建活动env的.condarc文件,其中包含:
*subdirs:

  • win-64(适用于windows(*

这是针对几个bug的临时解决方法,股份有限公司pywin32和conda在win上无法识别侧面env。这群虫子似乎正在形成一个漏斗,其中一些可以追溯到至少2年前。

请注意,只有在完成conda/mamba envir安装以供TF使用后,才可以通过pip安装TF。

最新更新