首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何修复在conda环境中安装库时找不到入口点

如何修复在conda环境中安装库时找不到入口点
EN

Stack Overflow用户
提问于 2019-07-29 20:35:34
回答 7查看 46.6K关注 0票数 31

我在Anaconda上工作,通过在其中创建多个环境。我已经创建了一个环境camelot,现在我想在这个环境中安装不同的库。例如,为了在这个环境中安装pandas,我写道:

代码语言:javascript
运行
复制
conda install pandas 

代码语言:javascript
运行
复制
conda install -c conda-forge camelot-py

然后它会给出这个错误:

代码语言:javascript
运行
复制
python.exe-Entry Point Not Found
   The procedure entry point OPENSSL_sk_new_reserve could not be 
   located in the dynamic link library.
   C:\Users\abc\Anaconda3\Library\bin\libssl11_-x64.dll

首先,我认为这可能是因为环境变量,因此我为Python设置了一个环境变量,但这并没有解决问题。

EN

回答 7

Stack Overflow用户

发布于 2019-08-12 16:19:36

正如here中所建议的,我可以通过将Anaconda/DLLS中的libssl-1_1-x64 dlls复制到Anaconda/Library/bin (可能会替换它)来解决这个问题。

票数 58
EN

Stack Overflow用户

发布于 2019-08-21 13:46:31

我在更新时遇到了同样的问题,并通过将Anaconda3/Library/bin中的文件libssl-1_1-x64.dll替换为Anaconda3/DLL中的文件解决了这个问题。

票数 17
EN

Stack Overflow用户

发布于 2020-01-24 01:38:25

正如蟒蛇维护者here所提到的那样……

像那样移动libssl dll确实是不可取的。这些DLL是重复的,因为您的包中有可疑的东西。DLLs文件夹中不应该有任何openssl DLL。它们应该在Library/bin中

通过查看conda-meta目录中的JSON文件,我发现DLLs\libssl-1_1-x64.dll是由python 3.7.0包安装的,而Library\bin\libssl-1_1-x64.dll是由openssl包安装的。经过进一步的研究,我发现Python3.7.0不会将 OpenSSL作为单独的软件包安装,但Python3.7.1(以及更高版本)的可以安装。

通常情况下,升级Python会按预期进行,但是如果不知何故同时安装了python 3.7.0openssl包,将会有两个libssl-1_1-x64.dll文件,您的Anaconda发行版将被破坏。(您可以使用conda list命令轻松地验证这一点。)

我认为修复它的最好方法是:

  1. Library\bin\libssl-1_1-x64.dll重命名为Library\bin\libssl-1_1-x64.dll.org (您稍后会用到它)。
  2. DLLs\libssl-1_1-x64.dll复制到Python3.7.1或更高版本,例如使用conda update python。这将删除DLLs\libssl-1_1-x64.dll文件。
    1. 删除当前的Library\bin\libssl-1_1-x64.dll文件。
    2. Library\bin\libssl-1_1-x64.dll.org重命名为Library\bin\libssl-1_1-x64.dll。这是必要的,因为我在下一步使用conda install openssl --force-reinstall otherwise.
    3. Reinstall OpenSSL时得到了HTTP错误,以确保它再次是最新的。
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57254007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档