subversion和apache,apr,apr-util,neon的关系

这里简单说明一下svn服务器和客户端的安装说明。

服务器

subversion服务器是不需要apache的,但是可以使用apache,视具体情况来选择。
1、如果只要通过file://或svn://来访问,则不需要apache,只安装svn即可,使用svnserve来作为服务。
2、如果你要建立一个可以通过http://或https://来访问的版本库服务器,则你需要使用apache。

客户端

在windows下,不管你要访问的是什么类型的服务器,只要安装一个TortoiseSVN就可以了,开发者已经帮你搞定一切。
在类Linux系统下,如果你通过file://或svn://来访问,则只要编译安装svn就可以,
如果通过http://访问,则要同neon编译,
如果通过https://访问,则要同带ssl支持的neon编译,
不论怎样,都要同apr和apr-util编译。

LINUX平台安装SVN客户端

1. 安装前准备

1)安装环境:SUSE-10.0,subversion-1.4.5
2) 需要3个tar.gz形式的源代码压缩包:
apr-1.2.11.tar.gz
apr-util-1.2.10.tar.gz
subversion-1.4.5.tar.gz
3) 系统需带有gcc等编译器

2. 安装步骤

1) 安装apr
以root帐号登陆linux系统,进入apr软件包存放的路径,依次执行以下命令:

$ tar zxvf apr-1.2.11.tar.gz
$ cd apr apr-1.2.11
$ ./configure
$ make
$ make install
$ make clean

2) 安装apr-util
和apr类似,进入apr-util软件包存放的路径,依次执行以下命令:

$ tar zxvf apr-util-1.2.10.tar.gz
$ cd apr apr-1.2.11
$ ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
$ make
$ make install
$ make clean

3)安装neon //为了支持http://和https://访问

$ tar zxvf neon-0.28.4.tar.gz
$ cd neon-0.28.4
$ ./configure --prefix=/usr/local/neon --enable-shared --with-ssl
$ make
$ make install

4)安装sqlite

$ tar zxvf sqlite-amalgamation-3.7.3.tar.gz
$ cd sqlit-3.7.3
$ ./configure --prefix=/usr/loca/sqlite
$ make && make install

5) 安装subversion
在存放subversion软件包的路径下,依次执行:

$ tar zvxf subversion-1.4.5.tar.gz
$ cd subversion-1.4.5
$ ./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-neon=/usr/local/neon --with-ssl
$ make
$ make install
$ make clean

3. 验证安装成功

键入svn –version,如出现版本信息,显示如下,则表示安装成功:

4. 遇到问题

1)重启apache时出现错误:Error:while loading shared libraries libexpat.so.1 cannot open open shared object file No such file or directory

解决方案:在etc/ld.so.config文件中加入:usr/lib和usr/local/lib然后ldconfig下。

PS:/etc/ld.so.conf: 这个文件记录了编译时使用的动态链接库的路径。ldconfig命令是:将/etc/ld.so.conf列出的路径下的库文件 缓存到/etc/ld.so.cache 以供使用。

2)编译subversion时出现:configure: error: Subversion requires SQLite
解决方案:

$ cd sqllit-3.7.3
$ cp sqlite3.c ../subversion-1.6.17/sqlite-amalgamation/sqlite3.c

3)配置完成后,重启apache时出现的错误:httpd: Syntax error on line 53 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_dav_svn.so into server: /usr/local/apache2/modules/mod_dav_svn.so:

解决方案:

$ ./configure --prefix=/usr/local/apache2/--enable-module --enable-shared--enable-dav--enable-so --enable-maintainer-mode --enable-rewrite
#此处配置的为apache的参数,配置完成后需要重新安装。

发表评论