我正在尝试运行一个需要 libcurl 的应用程序,但无法启动它。
error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
我之前运行的是 CentOS 5.9,但更新后我现在使用的是 CentOS 版本 5.11(最终版)
当我运行 yum install curl 时,我得到了这个:
Package curl-7.15.5-17.el5_9.x86_64 already installed and latest version
Package curl-7.15.5-17.el5_9.i386 already installed and latest version
运行locate libcurl时
/usr/lib/libcurl.a
/usr/lib/libcurl.so
/usr/lib/libcurl.so.3
/usr/lib/libcurl.so.3.0.0
/usr/lib/pkgconfig/libcurl.pc
/usr/lib64/libcurl.a
/usr/lib64/libcurl.so
/usr/lib64/libcurl.so.3
/usr/lib64/libcurl.so.3.0.0
/usr/lib64/pkgconfig/libcurl.pc
/usr/local/lib64/libcurl.a
/usr/local/lib64/libcurl.so.4
/usr/local/lib64/libcurl.so.4.2.0
/usr/share/man/man3/libcurl-easy.3.gz
/usr/share/man/man3/libcurl-errors.3.gz
/usr/share/man/man3/libcurl-multi.3.gz
/usr/share/man/man3/libcurl-share.3.gz
/usr/share/man/man3/libcurl-tutorial.3.gz
/usr/share/man/man3/libcurl.3.gz
答案1
尝试yum whatprovides */libcurl.so.4
安装带有匹配文件的软件包。注意安装两个都i386 和 x86_64 包。
如果这不起作用,请提供上述命令的输出。
答案2
CentOS 5 确实很旧。您的应用程序显然需要更新的版本curl
。您可以从其他第三方存储库获取它,也可以自行构建它,但将系统更新为较新的版本听起来是个更好的主意。