fedora8服务器上装的svn版本是1.44,而windows客户端为1.45,当将程序整合完后,发现在服务器端无
法checkout。所以决定将svn服务器端和客户端都升级为最新版本v1.66.
从http://subversion.tigris.org/下载源代码,解压后编译
./configure
make
make install
重启服务器,svn --version查看是1.66了,可浏览器里怎么都没有网页出来。
查看apache服务,原来httpd启动有问题:
[root@localhost modules]# httpd
httpd: Syntax error on line 205 of /etc/httpd/conf/httpd.conf: Cannot load
/usr/lib/httpd/modules/mod_dav_svn.so into server: /home/jeff/svn-source/subversion-
1.6.6/subversion/libsvn_subr/.libs/libsvn_subr-1.so.0: undefined symbol: apr_hash_clear
google了一圈,没有找到关于apr_hash_clear错误的解决方法。 这下完了,svn罢工,工作还怎么进行?
怀疑是libsvn_subr-1.so.0等库没有copy到lib目录导致链接不到,所以手工copy了,还是一样的错误。
用ldd查看:
[root@localhost modules]# ldd libsvn_subr-1.so.0
linux-gate.so.1 => (0x00110000)
libaprutil-1.so.0 => /home/jeff/svn-source/subversion-1.6.6/apr-
util/.libs/libaprutil-1.so.0 (0x001b2000)
libexpat.so.1 => /lib/libexpat.so.1 (0x001ce000)
libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x001ef000)
libapr-1.so.0 => /home/jeff/svn-source/subversion-1.6.6/apr/.libs/libapr-1.so.0
(0x002cd000)
libuuid.so.1 => /lib/libuuid.so.1 (0x002f2000)
librt.so.1 => /lib/librt.so.1 (0x002f6000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x002ff000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00331000)
libdl.so.2 => /lib/libdl.so.2 (0x0034a000)
libz.so.1 => /lib/libz.so.1 (0x0034f000)
libc.so.6 => /lib/libc.so.6 (0x00362000)
/lib/ld-linux.so.2 (0x00b45000)
似乎这些库都有。但问题没解决。
不知道怎么搞的,突然想到查看查看rpm -qa,查看到里面的subversion版本还是1.44,所以,先卸载再说
,将几个带subversion的包都卸载掉,然后重新在source目录下make install,完成后输入httpd:
[root@localhost modules]# httpd
[Tue Dec 22 23:51:27 2009] [warn] module dav_svn_module is already loaded, skipping
[Tue Dec 22 23:51:27 2009] [warn] module authz_svn_module is already loaded, skipping
已经加载!! 赶紧打开浏览器,“Powered by Subversion 1.6.6”出现在网页左下方!