卸载了curl后yum不能使用,libcurl.so.4: cannot open shared object file: No such file or directory

来源:互联网 发布:淘宝模板代码怎么关闭 编辑:程序博客网 时间:2024/06/06 00:34

在生产环境(centos6.6)中想升级curl,然后烦了一个愚蠢的错误卸载了curl以及依赖库.
执行如下
rpm -e libcurl-7.19.7-52.el6.x86_64 –nodeps
rpm -e curl-7.19.7-52.el6.x86_64 –nodeps
这时候你的yum就会这样,php中有curl函数的页面也会无法解析

这里写图片描述
提示你没有libcurl.so.4,这个东西就是curl的动态库
补救办法就是编译curl


先下载curl然后编译,因为我只卸载了curl没有卸载pycurl的依赖,我的openssl是rpm的形式装的,所以我编译的时候不需要制定ssl的路径

[root@localhost ~]# tar -zxf curl-7.38.0.tar.gz[root@localhost ~]# cd curl-7.38.0[root@localhost ~]# ./configure --prefix=/usr/local/curl --with-ssl[root@localhost ~]# make && make install[root@localhost ~]# export PATH=$PATH:/usr/local/curl/bin/ #添加临时变量[root@localhost ~]# vi /etc/profile #添加永久变量PATH=$PATH:/usr/local/curl/bin/

然后curl -V
这里写图片描述
支持https了


这时候yum一下看下能不能用了,如果还是不能别急。
这里写图片描述
动态库找不到
这里写图片描述

[root@localhost /]# vi etc/ld.so.conf #把编译后的动态路径加上去 /usr/local/curl/lib/[root@localhost /]# ldconfig

这里写图片描述

这时候yum就修好了
这里写图片描述

1 0