/usr/lib64/python2.6/site-packages/pycurl.so报错解决

/usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback

源码安装了curl之后, 导致yum执行时报如下错误:

/usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback

是因为yum动态库使用了新安装libcurl库导致的。使用ldd查看动态库依赖关系:

ldd /usr/lib64/python2.6/site-packages/pycurl.so

可以发现libcurl.so.4 指向了新安装的libcurl。

查找系统旧有的libcurl

find / -name “libcurl*”

/usr/lib64/libcurl.so.4 -> libcurl.so.4.1.1

/usr/local/lib/libcurl.so.4 -> libcurl.so.4.4.0

有两种方法解决:

1. 直接将/usr/local/lib/libcurl.so.4 软连接到旧有libcurl中

rm  /usr/local/lib/libcurl.so.4

ln -s /usr/lib64/libcurl.so.4.1.1 /usr/local/lib/libcurl.so.4

2. 设置LD_LIBRARY_PATH,  将旧有的libcurl路径放置在前面

export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH

    © 版权声明
    THE END
    喜欢就支持一下吧
    点赞6赞赏 分享
    评论 抢沙发
    头像
    欢迎您留下宝贵的见解!
    提交
    头像

    昵称

    取消
    昵称表情代码图片

      暂无评论内容