Anaconda"无法定位程序输入点 OPENSSL_sk_new_reserve 于动态链接库Anaconda3\Library\bin\libssl-1_1-x64.dll上"的解决办法

参阅:https://stackoverflow.com/a/59884311/625350

问题描述

在anaconda上来来回回装了好些个包之后、不同环境下装了不同python版本后报错,自此无法conda install,十分麻烦,参阅了CSDN上各种解决方法,主要是将DLLs里的libssl-1_1-x64.dll文件复制粘贴到bin里,完全治标不治本,要不就是打不开anaconda,要不就是还不能install,岁将问题翻成英文,去StackOverflow上寻找答案。

解决方法

次解决方法为StackOverflow上titusjan用户提出,我个人试验后可行,将谷歌翻译后版本给出:

正如Anaconda维护人员在这里(https://github.com/conda/conda/issues/9003#issuecomment-553529174)提到的...

那样移动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软件包安装。经过进一步调查,我发现了Python 3.7.0并没有安装OpenSSL的作为一个单独的包,但是Python 3.7.1(或更高版本)呢。

通常,升级Python会按预期进行,但是如果您最终以某种方式同时将它们python 3.7.0和openssl软件包同时安装,将会有两个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到Library\bin\libssl-1_1-x64.dll

  3. 使用conda update python将Python版本更新。这将删除DLLs\libssl-1_1-x64.dll文件。

  4. 重命名Library\bin\libssl-1_1-x64.dll.org为Library\bin\libssl-1_1-x64.dll。这是必要的,因为否则下一步将出现HTTP错误。

  5. 使用conda install openssl --force-reinstall重新安装OpenSSL以确保它是最新的。

总结

事实上,DLL文件夹里的libssl-1_1-x64.dll文件完全是不应该存在的,根据官方说法将anaconda添加到system path也是不好的,所以实在不行不如重装。(anaconda真的麻烦)

Anaconda"无法定位程序输入点 OPENSSL_sk_new_reserve 于动态链接库Anaconda3\Library\bin\libssl-1_1-x64.dll上"的解决办法的更多相关文章

  1. 关于“无法定位程序输入点gzdirect于动态链接库zlib1.dll”的问题

    费劲N多力气编译通过之后,最后启动程序过程中却突然得到“无法定位程序输入点gzdirect于动态链接库zlib1.dll”的问题, 分析究其原因是定位不到zlib1.dll,都知道,程序在找dll的时 ...

  2. XP下 无法定位程序输入点WSAPoll于动态链接库ws2_32.dll 的解决办法

    最近在给手机启用黑阈服务的时候出现了无法定位程序输入点WSAPoll于动态链接库ws2_32.dll这个错误,上网查了一下是因为SDK Platform Tools版本过高不能兼容windows xp ...

  3. 安装MySQL时候最后一步报无法定位程序输入点fesetround于动态链接库MSVCR120.dll

    今天在装MySQL时到最后一步出现了一个问题[报无法定位程序输入点fesetround于动态链接库MSVCR120.dll]这是由什么原因引起的呢,其实是缺少一个vcredist_x64.exe插件 ...

  4. [工具/PC]计算机中丢失libiconv-2.dll,丢失libintl-8.dll,无法定位程序输入点libiconv于动态链接库libiconv-2.dll上问题解决方法

    CodeBlocks 1. 背景,为了学习C语言,在win系统上下载了codeBlock,先简单介绍下:Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境. Code::B ...

  5. opengl 无法定位程序输入点_glutInitWithExit于动态链接库glut32.dll上

    1.问题:opengl 无法定位程序输入点_glutInitWithExit于动态链接库glut32.dll上 2.环境:vc6.0  win7,64位,opengl. 3.解决:将glut32.dl ...

  6. 无法定位程序输入点GetTickCount64 在动态链接库kernel32.dll上

    winxp系统,在使用boost中的thread中的sleep的时候出现“无法定位程序输入点GetTickCount64 在动态链接库kernel32.dll上”的错误, 1.在引用boost库之前( ...

  7. VS2010 + winxp 无法定位程序输入点GetTickCount64 在动态链接库kernel32.dll上 错误

    winxp系统,使用VS2010, 在使用boost中的thread中的sleep的时候出现 “无法定位程序输入点GetTickCount64 在动态链接库kernel32.dll上”的错误, 在网上 ...

  8. 解决无法定位程序输入点SymEnumSymbols于动态链接库dbghelp.dll

    作者:朱金灿 来源:http://blog.csdn.net/clever101 下载一个源码,使用VS2008编译链接无问题,运行时出现一个错误:无法定位程序输入点SymEnumSymbols于动态 ...

  9. 安装postman时遇到“无法定位程序输入点 SetDefaultDllDirectories于动态链接库KERNEL32.dll 上.”的问题

    安装postman时遇到“无法定位程序输入点 SetDefaultDllDirectories于动态链接库KERNEL32.dll 上.”的问题 解决办法: 1.安装系统更新补丁KB2533623,下 ...

随机推荐

  1. 项目转移时发生的错误<springboot+mybatis(xml逆向工程自动生成)>

    org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'app ...

  2. 登录时 按Enter 进入登录界面 或者下一行

    function keyLogin() { if (event.keyCode == 13) //回车键的键值为13 $(".btn-submit").click(); //调用登 ...

  3. Spring作用域和BeenFactory

    1.Spring Bean实例作用域: ① singleton:   IOC容器仅创建一个Bean实例,IOC容器每次返回的是同一个Bean实例. ② prototype:   IOC容器可以创建多个 ...

  4. java web HttpServletRequest

    一.HttpServletRequest介绍 HttpServletRequest 对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,通过这个对象提供的方法,可以获得客户端请求的所有信息. ...

  5. java 集合与数组的互转方法,与源码分析

    前言 java数组与集合需要互相转换的场景非常多,但是运用不好还是容易抛出UnSupportedOperationException.下面讲解一下互转的方法,以及结合源码分异常产生的原因 集合转数组 ...

  6. 【Unity|C#】基础篇(0)——C#与.NET框架

    [学习资料] <C#图解教程>(第1章):https://www.cnblogs.com/moonache/p/7687551.html 电子书下载:https://pan.baidu.c ...

  7. C++-POJ3274-Gold Balanced Lineup[hash]

    不是很懂? 胡乱hash #include <set> #include <map> #include <cmath> #include <queue> ...

  8. DVWA全级别之CSRF(跨站请求伪造)

    CSRF(Cross-site request forgery)  CSRF,全称Cross-site request forgery,翻译过来就是跨站请求伪造,是指利用受害者尚未失效的身份认证信息( ...

  9. leetcode 64. 最小路径和 动态规划系列

    目录 1. leetcode 64. 最小路径和 1.1. 暴力 1.2. 二维动态规划 2. 完整代码及执行结果 2.1. 执行结果 1. leetcode 64. 最小路径和 给定一个包含非负整数 ...

  10. List数组排序

    import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.u ...