centos5上安装 svn1.6

在官方网站中有1.6的rpm安装包可用,把所有相关rpm都下载下来:
wget -r -np -nd http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/1.6.1/rhel5/x86_64/

尝试安装:
rpm -ivh subversion-1.6.1-1.rhel5.x86_64.rpm
error: Failed dependencies:
        sqlite >= 3.4 is needed by subversion-1.6.1-1.x86_64

需要新版的sqlite支持,尝试安装:
rpm -ivh sqlite-3.5.9-2.x86_64.rpm
Preparing...                ########################################### [100%]
        file /usr/bin/sqlite3 from install of sqlite-3.5.9-2 conflicts with file from package sqlite-3.3.6-2
        file /usr/lib64/libsqlite3.so.0.8.6 from install of sqlite-3.5.9-2 conflicts with file from package sqlite-3.3.6-2

已有:
rpm -qa|grep sqlite
python-sqlite-1.1.7-1.2.1
sqlite-3.3.6-2

尝试卸载掉旧版的sqlite:
rpm -e sqlite-3.3.6-2
error: Failed dependencies:
        libsqlite3.so.0()(64bit) is needed by (installed) rpm-4.4.2-47.el5.x86_64
        libsqlite3.so.0()(64bit) is needed by (installed) rpm-libs-4.4.2-47.el5.x86_64
        libsqlite3.so.0()(64bit) is needed by (installed) yum-metadata-parser-1.0-8.fc6.x86_64
        libsqlite3.so.0()(64bit) is needed by (installed) python-sqlite-1.1.7-1.2.1.x86_64
        libsqlite3.so.0()(64bit) is needed by (installed) apr-util-1.2.7-6.x86_64

依赖提示很重要,rpm命令依赖sqlite,但当时没太大留意,执行了强制卸载:
rpm -e sqlite-3.3.6-2 --nodeps

再尝试安装新版的sqlite,才发觉rpm对sqlite的依赖:
rpm -ivh sqlite-3.5.9-2.x86_64.rpm
rpm: error while loading shared libraries: libsqlite3.so.0: cannot open shared object file: No such file or directory

尝试用yum来恢复旧版的sqlite,但yum也依赖sqlite(应该是依赖rpm命令):
yum install sqlite
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   libsqlite3.so.0: cannot open shared object file: No such file or directory

wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/sqlite-3.3.6-2.x86_64.rpm

sqlite RPM packages for Red Hat, CentOS and Fedora
http://dag.wieers.com/rpm/packages/sqlite/

所有rpm命令都无法使用了:
[root@st-71 rpms]# rpm --help
rpm: error while loading shared libraries: libsqlite3.so.0: cannot open shared object file: No such file or directory

这时就是一个鸡和蛋的问题了:要安装sqlite,就需要rpm,而rpm又需要sqlite,死循环了。

可以通过源码安装sqlite,但在官方网站上找不到sqlite-3.3.x版本的源码。

最后通过在windows中下载了sqlite-3.3.6-2.x86_64.rpm ,用7zip解压出usr/lib64/libsqlite3.so.0.8.6 上传到 /usr/lib64/libsqlite3.so.0.8.6
然后建一个链接:
ln -s /usr/lib64/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0

这时gem命令可以用了。

恢复旧版的sqlite:
wget http://mirrors.163.com/centos/5/os/x86_64/CentOS/sqlite-3.3.6-2.x86_64.rpm
rpm -ivh sqlite-3.3.6-2.x86_64.rpm

现在回到起点了。

svn 1.6需要新版的sqlite,而svn 1.5不需要:
wget -r -np -nd http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/1.5.6/rhel5/x86_64/

现有的svn版本:
rpm -qa|grep subversion
subversion-1.4.2-2.el5

卸载旧版svn:
rpm -e subversion-1.4.2-2.el5

安装svn 1.5.6
rpm -ivh neon-0.27.2-1.x86_64.rpm
rpm -ivh neon-devel-0.27.2-1.x86_64.rpm
rpm -ivh subversion-1.5.6-1.rhel5.x86_64.rpm

顺利安装完成:
svn --version
svn, version 1.5.6 (r36142)
   compiled Mar 1 2009, 15:09:22

现在再到代码目录执行svn up,已经可以顺利执行了。

-------以上为安装svn1.5,其实也是可以安装1.6的,只要用7zip文件将sqlite-3.5.2中的libsqlite3.so.0.8.6文件放到/usr/lib64/中,并执行ln -s /usr/lib64/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0 ; 同时 执行rpm -ivh svn1.6.3即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值