zoukankan      html  css  js  c++  java
  • CentOS 6.5 源码安装subversion-1.8.8,附加mod_dav_svn模块

    题记:第一次写如此实践类的博文,都是亲身经历,折腾了大半天,仅记录供参考。(新手实践,有错误之处欢迎纠正。)

    安装前准备:

      1.已安装JDK1.7,并配置好环境变量。

      2.已安装apr、apr-util、apr-iconv(可选),我全部安装在/usr/local/apr目录下。

      3.已安装Apache HTTP Serve,我安装在/usr/local/httpd目录下。

      4.下载scons-2.3.1-1.noarch.rpm、serf-1.3.4.tar.bz2、subversion-1.8.8.tar.gz。

    解释:subversion-1.8 需要使用serf软件包支持访问http协议的版本库。

         subversion源码包解压后自带的serf,我configure成功后make报错,折腾了老半天没解决(可能是我的系统依赖包/库lib的问题);我就重新下载了serf-1.3.4,但新版的只支持scons编译安装,所有就绕了一大圈。你可以直接使用subversion提供的serf试试。

        apr 和 apr-util 就不说了,很多软件依赖的。

    安装过程:(解压及切换目录就不详写了)

    可以先切换至 subversion-1.8.8 解压的目录下,用如下命令查看下依赖:

    1 # ./get-deps.sh

    缺少的可以直接进入subversion目录下自带的依赖包源码编译安装,或自行单独安装。

    安装scons:

    1 # rpm -ivh scons-2.3.1-1.noarch.rpm

    安装serf:

    1 # scons PREFIX=/usr/local/serf APR=/usr/local/apr APU=/usr/local/apr 
    2 # scons install 
    3 # scons -c

    安装subversion:

    1 # 先编译,参数路径可根据实际情况自行调整
    2 # ./configure --prefix=/usr/local/subversion --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr --enable-mod-activation --with-apache-libexecdir=/usr/local/httpd/modules --with-apxs=/usr/local/httpd/bin/apxs --with-serf=/usr/local/serf
    3 # 仔细查看编译输出,确认无误后make安装
    4 # make && make install

    准备充分顺利的话上面的命令就可以成功搞定了,我在编译后出现一些警告,一些提示未加载之类的信息,自行百度解决了。

    ps:

    1. 可以通过:

    1 # ./configure --help

    查看编译时候可添加的参数信息,根据需要自行添加。

    2. subversion源码里自带了 mod_authz_svn、mod_dav_svn,无需另外独自安装,很方便;可以在编译时指定参数加载到Apache下,安装完成后可以查看Apache的modules目录下的模块文件和配置文件确认已加载svn模块。

    安装到此结束,我打算查看下svn版本时候又出问题了:

    1 # 切换至svn安装目录查看版本信息
    2 # ./svn --version
    3 # 报错,提示 libserf-1.so 找不到
    4 ./svn: error while loading shared libraries: libserf-1.so.1: cannot open shared object file: No such file or directory

    显然是由于安装的 serf 库文件未被找到,可以通过以下办法解决:

    1 # 在系统 ld.so.conf.d 目录下新建conf文件
    2 # vi /etc/ld.so.conf.d/serf-1.3.4.conf
    3 # 添加serf的库目录路径 /usr/local/serf/lib
    4 # 保存退出
    5 # /sbin/ldconfig -v

    再次看下svn版本:

     1 # ./svn --version
     2 
     3 svn,版本 1.8.8 (r1568071)
     4    编译于 Mar 23 2014,16:50:59 在 x86_64-unknown-linux-gnu
     5 版权所有 (C) 2013 Apache 软件基金会。
     6 此软件包含了许多人的贡献,请查看文件 NOTICE 以获得更多信息。
     7 Subversion 是开放源代码软件,请参阅 http://subversion.apache.org/ 站点。
     8 可使用以下的版本库访问模块:
     9 * ra_svn : 使用 svn 网络协议访问版本库的模块。
    10   - 处理“svn”方案
    11 * ra_local : 访问本地磁盘的版本库模块。
    12   - 处理“file”方案
    13 * ra_serf : Module for accessing a repository via WebDAV protocol using serf.
    14   - using serf 1.3.4
    15   - 处理“http”方案
    16   - 处理“https”方案

    可以看到svn支持http、https 访问。

    查阅文档,发现安装 serf 的时候可以把库文件直接安装到系统目录下/usr/lib64,使用参数:LIBDIR=/usr/lib64,可以试试,这样就不会提示 libserf-1.so找不到的问题。

    svn的配置这里就不详说了。

    作者:hackem
             
    本文版权归原作者所有,欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    vue+elementUI表格排序事件
    移动端flex布局
    注册发送验证码提示信息
    jquery模拟生日日期下拉选择框
    标签模拟多选择框checkbox
    vue关于组件传值
    关于前端浏览器与服务器间的交互的对比与分析
    axios的基本使用
    Promise的基本使用
    Vue Cli2 文件路径别名
  • 原文地址:https://www.cnblogs.com/hackem/p/3619415.html
Copyright © 2011-2022 走看看