首页 > 解决方案 > 将 Conda 更新到 4.6.1 以集成 PowerShell 后,Conda 无法安装 Conda-forge 包

问题描述

最新版本的 Conda (4.6.1) 断言添加了初始化支持,尤其是对 PowerShell 的引用。可以在这个官方更新发布文档中看到

我在这里详细介绍了更新和初始化过程(因为我在编码会话期间遇到了 Microsoft/PowerShell 需要 Set-ExecutionPolicy remoteSigned 的问题)。

我可以设置它并将其与 Visual Studio Code 集成,但是我现在遇到了一个问题,即我无法将来自 Conda-forge 的包安装到我的任何 conda 环境中。

下面是我得到的错误的输出:

(p3environ_test) C:\Users\User\Miniconda3\envs\p3environ_test>conda install -c conda-forge numpy
Collecting package metadata: failed

CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/main/win-64/repodata.json.bz2>
Elapsed: -

An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.

If your current network has https://www.anaconda.com blocked, please file
a support request with your network engineering team.

SSLError(MaxRetryError('HTTPSConnectionPool(host=\'repo.anaconda.com\', port=443): Max retries exceeded with url: /pkgs/main/win-64/repodata.json.bz2 (Caused by SSLError("Can\'t connect to HTTPS URL because the SSL module is not available."))'))

虽然这似乎是一次性事件,但我也遇到了一个简单的尝试创建 python 3 环境的问题,其中错误输出如下:

Collecting package metadata: done
Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:

  - python-3.6

Current channels:

  - https://repo.anaconda.com/pkgs/main/win-64
  - https://repo.anaconda.com/pkgs/main/noarch
  - https://repo.anaconda.com/pkgs/free/win-64
  - https://repo.anaconda.com/pkgs/free/noarch
  - https://repo.anaconda.com/pkgs/r/win-64
  - https://repo.anaconda.com/pkgs/r/noarch
  - https://repo.anaconda.com/pkgs/msys2/win-64
  - https://repo.anaconda.com/pkgs/msys2/noarch

To search for alternate channels that may provide the conda package you're
looking for, navigate to

    https://anaconda.org

and use the search bar at the top of the page.

我猜测最新版本的 Conda (V.4.6.1) 有一个错误,或者它是一个 Conda-forge 频道问题(也许他们没有考虑这里的更新?)?

我重新加载了之前版本的 Conda (4.5),并且在创建环境或安装 conda-forge 包方面没有问题。

在之前的升级过程中,这里有人注意到了类似的事件,我想知道这是否是频道的问题。在链接中,特别注意添加频道。正如您可能猜到的那样,我是一个 conda 新手(或者至少缺乏熟练度),所以不知道如何手动调整频道或者我是否应该(这是否会在以后给我带来新的问题康达更新?)康达锻造过去只是为我工作,没有任何渠道调整。

任何帮助将不胜感激。

谢谢。

标签: pythonpowershellvisual-studio-codecondaminiconda

解决方案


TL;DR:我通过安装OpenSSL解决了我的类似问题。具体来说,我下载了 1.1.1a 版本,64 位 ( Win64OpenSSL-1_1_1a.exe) 并使用默认安装参数安装它,即我选择将 OpenSSL DLL 复制到“Windows 系统目录”。

更多细节:

  • 我对 Anaconda3的全新安装(!)也有类似的头痛。就我而言,在(conda 的)虚拟环境中,我conda install什么也做不了,并且不断收到与您类似的 SSL 错误。
  • 有几个人推荐conda config --set ssl_verify False,但这听起来像是一个可怕而危险的黑客(+有人说这会导致安装某些软件包出现问题)。
  • 其他人推荐,set REQUESTS_CA_BUNDLE=path\to\anaconda3\Lib\site-packages\certifi\cacert.pem但它对我不起作用。(我也尝试将它设置为环境变量,也没有工作)
  • 总而言之,安装 OpenSSL(见上文)为我解决了这个问题。

额外提示,可能与类似问题有关:

  1. Anaconda Prompt 中的某些事情更容易(与普通的命令提示符相反)。
  2. 如果您刚刚安装了新的 Anaconda,请帮自己一个忙并重新启动您的 Windows,即使安装后不需要您这样做。

推荐阅读