Answers:
问题是您正尝试安装(git- 1.7.6.1-1。el5 .rf.i386)的el5版本。我遇到了与此处所述相同的问题。git
我通过启用rpmforge Extras修复了它,并拾取了el6的git(然后可以执行yum安装)
我确定这是centos默认存储库的问题,我的意思是默认情况下应该安装el6吗?
我在CentOS 6.3下遇到了同样的问题。跑步yum provides git
给了我两个选择:
git-1.7.1-2.el6_0.1.x86_64 : Fast Version Control System
git-1.7.4.1-1.el5.x86_64 : Fast Version Control System
因此,我做了一个yum install git-1.7.1-2.el6_0.1.x86_64
,它安装了.el6版本的git
,和perl-Error
和perl-Git
,并且没有出现错误,也没有丢失libcurl.so.3
文件!
我认为安装curl
软件包不会安装libcurl.so.3
。该curl
软件包提供的curl
程序和相关的文件,而不是库。
对于Centos,您所需的软件包可能称为curl-devel
。
我很惊讶yum
没有为您安装依赖项。在CentOS 5.6上,yum
手册页说:yum install
“用于安装软件包或一组软件包的最新版本,同时确保满足所有依赖性”。我想可能是依赖项配置不正确,但是对于像这样流行的东西似乎不太可能git
。
yum install curl-devel
依次尝试yum install git
。
首先,在根目录下,在/etc/yum.conf
编辑文件时,并在注释行的前面加上注释,;
即;exclude
(我使用http://winscp.net上的WinSCP 登录,因为它具有内置的修改后的记事本编辑器以及PuTTY用于SSH访问。)
阅读以上有关安装的内容后curl-devel
,它对我不起作用。但是yum reinstall curl-devel
有效。然后,我yum install git
继续进行,并继续安装git和2个其他需要的文件。
你应该安装 卷曲,因为它被列为git的直接依赖项(以及openssl-1.0.0d,libssh2,libiconv,libintl,libidn,expat和zlib)
确保它是7.21.7的curl,因为先前的任何ssh访问都已损坏。
正如Keith 提到的(+1),您需要curl-devel。仅存在一个libcurl-devel-7.19.7-16.el6.i686.rpm软件包,该软件包可能足够旧,以使ssh仍然可以工作。
libcurl.so.3
确实来自卷曲包装。
rpm -qf libcurl.so.3.0.0
curl-7.15.5-9.el5_6.2
我在的系统上创建了一个符号链接/usr/lib64
。
libcurl.so.3 -> libcurl.so.4.1.1
来自https://forum.linode.com/viewtopic.php?t=8777
将el5更改为el6似乎可以完成工作。
su root
cd /etc/yum.repos.d
for FILE in *; do mv $FILE $FILE.old; sed 's/el5/el6/g' $FILE.old > $FILE; done
yum clean all
这为我解决了。