【发布时间】:2020-01-22 02:15:15
【问题描述】:
由于以下错误,我无法在我的 CentOS 7 中使用 git clone/push 等:
[wsx@localhost ~]$ git clone https://github.com/ShixiangWang/metawho
Cloning into 'metawho'...
fatal: unable to access 'https://github.com/ShixiangWang/metawho/': Protocol https not supported or disabled in libcurl
我尝试阅读互联网上的许多博文(包括stackoverflow)但仍然无法解决。
我尝试升级 curl 版本,但没有成功。
奇怪的是https确实被启用了。
[wsx@localhost ~]$ curl -V
curl 7.64.1 (x86_64-conda_cos6-linux-gnu) libcurl/7.64.1 OpenSSL/1.1.1 zlib/1.2.11 libssh2/1.8.2
Release-Date: 2019-03-27
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS GSS-API HTTPS-proxy IPv6 Kerberos Largefile libz NTLM NTLM_WB SPNEGO SSL TLS-SRP UnixSockets
[wsx@localhost ~]$ git --version
git version 2.9.5
这困扰了我很多天,我对git和curl/libcurl知之甚少,希望有人知道如何解决这个问题并帮助我。
这不是重复的问题。提前致谢。
最好的,
世象
更新:
[wsx@localhost ~]$ ldd $(which curl)
linux-vdso.so.1 => (0x00007ffccfd81000)
libcurl.so.4 => /opt/anaconda3/bin/../lib/libcurl.so.4 (0x00007f064b209000)
libz.so.1 => /opt/anaconda3/bin/../lib/libz.so.1 (0x00007f064b1e9000)
librt.so.1 => /lib64/librt.so.1 (0x00007f064aea2000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f064ac86000)
libc.so.6 => /lib64/libc.so.6 (0x00007f064a8b8000)
libssh2.so.1 => /opt/anaconda3/bin/../lib/./libssh2.so.1 (0x00007f064b199000)
libssl.so.1.1 => /opt/anaconda3/bin/../lib/./libssl.so.1.1 (0x00007f064b100000)
libcrypto.so.1.1 => /opt/anaconda3/bin/../lib/./libcrypto.so.1.1 (0x00007f064a5bf000)
libgssapi_krb5.so.2 => /opt/anaconda3/bin/../lib/./libgssapi_krb5.so.2 (0x00007f064a570000)
libkrb5.so.3 => /opt/anaconda3/bin/../lib/./libkrb5.so.3 (0x00007f064a494000)
libk5crypto.so.3 => /opt/anaconda3/bin/../lib/./libk5crypto.so.3 (0x00007f064b0e0000)
libcom_err.so.3 => /opt/anaconda3/bin/../lib/./libcom_err.so.3 (0x00007f064b0da000)
/lib64/ld-linux-x86-64.so.2 (0x00007f064b0aa000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f064a290000)
libkrb5support.so.0 => /opt/anaconda3/bin/../lib/././libkrb5support.so.0 (0x00007f064a281000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f064a068000)
更新
[wsx@localhost ~]$ echo $LD_LIBRARY_PATH
/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:
/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:
/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64:
/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:
/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:
/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64:
/home/public/R/R-base/lib64/R/lib::/lib:/usr/local/lib64:
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre/lib/amd64/server
我还想告诉你,我只是将git clone 与root 用户一起使用,它有效,root 和wsx 使用不同的ldd。所以问题可能是由于一些错误的操作引起的。希望这可能会有所帮助。
[root@localhost ~]# ldd $(which curl)
linux-vdso.so.1 => (0x00007ffc593cc000)
libcurl.so.4 => /lib64/libcurl.so.4 (0x00007f466f5d0000)
libmetalink.so.3 => /lib64/libmetalink.so.3 (0x00007f466f3c0000)
libssl3.so => /lib64/libssl3.so (0x00007f466f167000)
libsmime3.so => /lib64/libsmime3.so (0x00007f466ef3f000)
libnss3.so => /lib64/libnss3.so (0x00007f466ec10000)
libnssutil3.so => /lib64/libnssutil3.so (0x00007f466e9e0000)
libplds4.so => /lib64/libplds4.so (0x00007f466e7dc000)
libplc4.so => /lib64/libplc4.so (0x00007f466e5d7000)
libnspr4.so => /lib64/libnspr4.so (0x00007f466e399000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f466e17d000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f466df79000)
libz.so.1 => /lib64/libz.so.1 (0x00007f466dd63000)
libc.so.6 => /lib64/libc.so.6 (0x00007f466d995000)
libnghttp2.so.14 => /lib64/libnghttp2.so.14 (0x00007f466d76e000)
libssh2.so.1 => /lib64/libssh2.so.1 (0x00007f466d534000)
libpsl.so.0 => /lib64/libpsl.so.0 (0x00007f466d2bc000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f466d06f000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f466cd86000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f466cb53000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f466c94f000)
libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x00007f466c6fa000)
liblber-2.4.so.2 => /lib64/liblber-2.4.so.2 (0x00007f466c4eb000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f466c2c1000)
librt.so.1 => /lib64/librt.so.1 (0x00007f466c0b9000)
/lib64/ld-linux-x86-64.so.2 (0x00007f466f85d000)
libssl.so.10 => /lib64/libssl.so.10 (0x00007f466be47000)
libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007f466b9e4000)
libicuuc.so.50 => /lib64/libicuuc.so.50 (0x00007f466b66b000)
libicudata.so.50 => /lib64/libicudata.so.50 (0x00007f466a098000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f4669e88000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f4669c84000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f4669a6b000)
libsasl2.so.3 => /lib64/libsasl2.so.3 (0x00007f466984e000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f466f915000)
libm.so.6 => /lib64/libm.so.6 (0x00007f466954c000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f4669336000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f466910f000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f4668ed8000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f4668c76000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f4668a73000)
我怎样才能把它改回来?
已解决
@VonC 感谢您的回复和耐心,export LD_LIBRARY_PATH=/lib64:/opt/anaconda3/bin/lib:${LD_LIBRARY_PATH} 有效。但是,我仍然很困惑,因为 libcurl.so 没有改变
[wsx@localhost ~]$ git clone https://github.com/ShixiangWang/metawho
Cloning into 'metawho'...
remote: Enumerating objects: 145, done.
remote: Counting objects: 100% (145/145), done.
remote: Compressing objects: 100% (80/80), done.
remote: Total 235 (delta 68), reused 126 (delta 51), pack-reused 90
Receiving objects: 100% (235/235), 850.89 KiB | 39.00 KiB/s, done.
Resolving deltas: 100% (99/99), done.
Checking connectivity... done.
[wsx@localhost ~]$ ldd $(which curl)
linux-vdso.so.1 => (0x00007ffc348db000)
libcurl.so.4 => /opt/anaconda3/bin/../lib/libcurl.so.4 (0x00007f9da54e9000)
libz.so.1 => /opt/anaconda3/bin/../lib/libz.so.1 (0x00007f9da54c8000)
librt.so.1 => /lib64/librt.so.1 (0x00007f9da5181000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f9da4f65000)
libc.so.6 => /lib64/libc.so.6 (0x00007f9da4b97000)
libssh2.so.1 => /opt/anaconda3/bin/../lib/./libssh2.so.1 (0x00007f9da5494000)
libssl.so.1.1 => /opt/anaconda3/bin/../lib/./libssl.so.1.1 (0x00007f9da53fc000)
libcrypto.so.1.1 => /opt/anaconda3/bin/../lib/./libcrypto.so.1.1 (0x00007f9da489e000)
libgssapi_krb5.so.2 => /opt/anaconda3/bin/../lib/./libgssapi_krb5.so.2 (0x00007f9da53ac000)
libkrb5.so.3 => /opt/anaconda3/bin/../lib/./libkrb5.so.3 (0x00007f9da47c2000)
libk5crypto.so.3 => /opt/anaconda3/bin/../lib/./libk5crypto.so.3 (0x00007f9da47a3000)
libcom_err.so.3 => /opt/anaconda3/bin/../lib/./libcom_err.so.3 (0x00007f9da479d000)
/lib64/ld-linux-x86-64.so.2 (0x00007f9da5389000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f9da4598000)
libkrb5support.so.0 => /opt/anaconda3/bin/../lib/././libkrb5support.so.0 (0x00007f9da4589000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f9da4370000)
[wsx@localhost ~]$ echo $LD_LIBRARY_PATH
/lib64:/opt/anaconda3/bin/lib:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64:/opt/anaconda3/bin/lib:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64:/opt/anaconda3/bin/lib:/opt/anaconda3/bin/lib:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64::/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/runtime/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/bin/glnxa64:/public/tools/GISTIC2/MATLAB_Compiler_Runtime/v83/sys/os/glnxa64
如何理解为什么它现在有效?
【问题讨论】:
-
您使用的是静态还是动态 curl 二进制文件?你从
ldd $(which curl)得到什么? -
@hanshenrik 谢谢,我已经更新了输出,请看一下。 :)
-
不知道
anaconda是什么,但您似乎使用的是anaconda 编译的curl?想知道git是否使用相同的libcurl,运行ldd $(which git) -
您能否编辑您的问题以包含
echo $LD_LIBRARY_PATH的输出? -
@bk2204 当然,我已经更新了这个。我总结了输出以便更好地阅读。