你好我从tcl错误运行curl时出现此错误:curl:/usr/local/lib/libcurl.so.4:没有可用的版本信息(curl需要)
curl --version
curl 7.40.0 (x86_64-unknown-linux-gnu) libcurl/7.40.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets
root@lasdf :/usr/local/lib$ ll
drwxr-xr-x 5 root root 4096 Feb 4 17:33 ./
drwxr-xr-x 10 root root 4096 Aug 2 2014 ../
-rw-r--r-- 1 root root 878996 Feb 4 17:33 libcurl.a
-rwxr-xr-x 1 root root 979 Feb 4 17:33 libcurl.la*
lrwxrwxrwx 1 root root 16 Feb 4 17:33 libcurl.so -> libcurl.so.4.3.0*
lrwxrwxrwx 1 root root 16 Feb 4 17:33 libcurl.so.4 -> libcurl.so.4.3.0*
-rwxr-xr-x 1 root root 472203 Feb 4 17:33 libcurl.so.4.3.0*
6 回答
我在安装CMAKE时遇到了这样的问题,输入
cmake
,输出为:像你的东西 .
首先,我找到
libcurl.so.4
的路径:结果是:
其次,找到libcurl.so.4的链接,输入:
结果:
第三,删除它并重建到
libcurl.so.4.3.0
的链接:接下来,检查一下:
好吧,输出是:
然后,我输入
cmake -version
,结果是修复bug后,我认为它可能是由多版本的curl引起的,像我一样,原始ubuntu环境有一个,但是我安装了另一个 .
在我的Ubuntu 12.04系统上,当已经存在
/usr/local/bin/curl
时,在运行/usr/bin/curl
(来自curl
可安装程序包)时发出此错误 . 执行which curl
并查看正在执行哪一个 - 如果是/usr/bin/curl
,请尝试执行/usr/local/bin/curl
.我在crontab的上下文中遇到了这个问题,它使用与我的用户不同的路径运行 . 快速解决方法是使用
/usr/local/bin/curl
明确指定我的curl
至于我,我的系统是ubuntu16有一个默认的卷曲 . 但是我按源代码安装了一个curl .
然后我看到最近安装的新libcurl.so(5月20日19:54):
然后他们:
核实:
我有一个简单的解决方案 .
您可能安装了libcurl并遇到了问题 . 但是你可以通过使用你安装的libcurl重建自己的cmake来解决它(使用LD_LIBRARY_PATH指向你的libcurl)
适合我 . (Ubuntu 16.04,libcurl 4.5和cmake 3.11.3)
在最新的ubuntu(18.4)我不得不
sudo apt-get remove libcurl.
然后重新安装所需的内容,例如
curl
在我的ubuntu 16.04中,当我将anaconda bin导出到
PATH
并将lib导出到LD_LIBRARY_PATH
时,我遇到了同样的问题 . 我通过从conda-forge安装cmake来解决它:conda install cmake
. 如果您使用anaconda作为我,您可以使用此方法来修复它,否则使用其他人的解决方案 .