conda环境下pycurl.so: undefined symbol: CRYPTO_num_locks解决方案

文章描述了一次在Linux系统中使用yum安装软件时遇到的问题,具体表现为Python模块导入失败,原因是conda环境中的libcurl.so.4动态链接库与系统Python版本不匹配。通过删除conda环境中的相关链接并创建正确指向系统库的新链接,最终解决了问题,成功安装了软件。

1 使用yum安装任何软件都失败

使用yum安装软件,出现如下错误:

[root@localhost repositories]# yum install zlib-devel
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   /usr/lib64/python2.7/site-packages/pycurl.so: undefined symbol: CRYPTO_num_locks

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.7.5 (default, Oct 14 2020, 14:45:30) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

2 问题分析

查看链接库内容

[root@localhost repositories]# ldd /usr/lib64/python2.7/site-packages/pycurl.so
        linux-vdso.so.1 =>  (0x00007ffee8f5d000)
        libcurl.so.4 => /root/anaconda3/lib/libcurl.so.4 (0x00007f627dbc8000)
        libpython2.7.so.1.0 => /lib64/libpython2.7.so.1.0 (0x00007f627d476000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f627d25a000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f627ce8c000)
        libnghttp2.so.14 => /root/anaconda3/lib/./libnghttp2.so.14 (0x00007f627db90000)
        libssh2.so.1 => /root/anaconda3/lib/./libssh2.so.1 (0x00007f627db4c000)
        libssl.so.1.1 => /root/anaconda3/lib/./libssl.so.1.1 (0x00007f627dabb000)
        libcrypto.so.1.1 => /root/ana
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源启智能

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值