zoukankan      html  css  js  c++  java
  • centos 安装 subversion1.8及更高版本

    前言

    一般而言,各发行版系统中内置的软件包都不是最新的,所以使用默认 yum 进行安装 subversion 时,安装的大多数都为低版本(1.7.X)。然而,在某些情况下,我们必须要使用高版本,此时我们可以使用以下两种方法进行高版本的安装。两种安装方式各有优缺点

    yum 安装(适用于网络环境OK、所需版本在 yum 仓库中存在情况下)

    1. 先在 http://opensource.wandisco.com/centos/ 查找出自己需要使用的源,比如我需要使用的就是 http://opensource.wandisco.com/centos/7/svn-1.11/RPMS/x86_64/

      注意:有一些版本源里面也是没有的,需要自己去检查一下是否存在,比如 http://opensource.wandisco.com/centos/7/ 目录下最高版本就是 1.11,其它高版本目录下内容为空

    2. 在服务器上新增一个 yum 仓库地址: vi /etc/yum.repos.d/wandisco-svn.repo 内容如下:

      [WandiscoSVN]
      name=Wandisco SVN Repo
      baseurl=http://opensource.wandisco.com/centos/$releasever/svn-1.11/RPMS/$basearch/
      enabled=1
      gpgcheck=0
      

      其中 $releasever 表示当前系统的发行版本,可通过rpm -qi centos-release命令查看,内容如下:

      其中 $basearch 表示当前系统硬件架构(CPU指令集),可通过arch命令查看,内容如下:

    3. 安装

       yum clean all
       yum makecache
       yum install subversion
      
    4. 验证

      svn --version
      

    源码安装(适用于所有新版本,依赖多,需考虑依赖版本问题)

    1. 官网源码编译安装介绍 https://svn.apache.org/repos/asf/subversion/trunk/INSTALL
    2. 依赖下载,所需依赖可以通过下载源码包之后,目录里面有一个 get-deps.sh 的脚本,从中分析可以得到所需要的依赖、版本以及其下载地址
    3. 依赖安装(提供一个百度云下载地址 链接:https://pan.baidu.com/s/1GKXkr86J-jle5FZJFaCq9w 提取码:cq5u )
      • 安装 bzip2

        tar -zxvf bzip2-1.0.6.tar.gz
        cd bzip2-1.0.6
        make && make install 
        
      • 安装 apr

         tar -zxvf apr-1.5.0.tar.gz 
         cd apr-1.5.0
         ./configure --prefix=/opt/apr 
         make && make install  
        
      • 安装 apr-util (依赖于前面安装的 apr)

         tar -zxvf apr-util-1.5.1.tar.gz
         cd apr-util-1.5.1
         ./configure --prefix=/opt/apr-util --with-apr=/opt/apr 
         make && make install   
        
      • 安装 python3

        yum install libffi-devel -y
        tar -zxvf Python-3.9.1.tgz
        cd Python-3.9.1
        ./configure --prefix=/opt/python3
        make && make install   
        
      • 安装 scons(依赖于下面安装的 python3)

        tar -xzvf scons-3.0.1.tar.gz
        cd scons-3.0.1
        ../python3/bin/python3 setup.py install --prefix=/opt/scons 
        
      • 安装 zlib

        tar -zxvf zlib-1.2.8.tar.gz
        cd  zlib-1.2.8
        ./configure
        make && make install 
        
      • 安装 openssl

        tar -zxvf openssl-1.1.1h.tar.gz
        cd openssl-1.1.1h
        ./config shared zlib  --prefix=/opt/openssl 
        make && make install  
        
        
      • 安装 serf

        bzip2 -dc serf-1.3.9.tar.bz2 | tar -xf - 
        cd serf-1.3.9
        ../scons/bin/scons PREFIX=/opt/serf APR=/opt/apr APU=/opt/apr-util OPENSSL=/opt/openssl
        ../scons/bin/scons install
        

        设置共享库 vi /etc/ld.so.conf,在文件中添加 serf 的lib路径:

        /opt/serf/lib
        

        执行 ldconfig

      • 安装 sqlite

        unzip -q sqlite-amalgamation-3081101.zip  
        
    4. subversion 安装
      tar -xzvf subversion-1.14.0.tar.gz
      mv sqlite-amalgamation-3081101 subversion-1.14.0/sqlite-amalgamation 
      cd subversion-1.14.0
      ./configure --prefix=/opt/subversion --with-apr=/opt/apr --with-apr-util=/opt/apr-util --with-zlib  --enable-maintainer-mode --with-serf=/opt/serf --enable-mod-activation --with-lz4=internal --with-lz4=internal --with-utf8proc=internal
      make && make install
      
      环境变量设置:在 vi /etc/profile 末尾增加以下内容:
      export SVNPATH=/opt/subversion/bin
      export PATH=$SVNPATH:$PATH:$HOME/bin   
      
      保存后执行 source /etc/profile
    5. 验证
      svn --version
      

    可能碰到的问题

    1. configure: error: no acceptable C compiler found in $PATH
      原因:没有C编译器
      解决:yum -y install gcc
    2. zipimport.ZipImportError: can't decompress data; zlib not available
      原因:没有zip解压缩类库
      解决:yum -y install zlib*
    3. 安装 serf 的时候,出现 importlib.metadata.PackageNotFoundError: SCons;
      原因:最开始的时候,我下载的是 scons 最新版本,估计是版本问题,我也懒得去查原因了,所以将 scons 换成低版本 3.0.1,最好解决
      解决:将 scons 更换为低版本 3.0.1
    4. unzip: command not found
      解决:yum install unzip
    5. 安装openssl时报错,提示需要安装 You need Perl 5
      解决:安装 perl-5.28.0.tar.gz
       tar zxvf perl-5.28.0.tar.gz
       cd perl-5.28.0
       ./Configure -des -Dprefix=$HOME/localperl
       make
       make test
       make install     
      
    6. 安装 subversion 出现 ./svn: error while loading shared libraries: libserf-1.so.1: cannot open shared object file: No such file or directory
      解决:需要将 serf 设置在共享库里之后从新编译安装: vi /etc/ld.so.conf 在文件中增加以下内容
      /opt/serf/lib   
      
      保持之后执行ldconfig,重新编译 subversion
    7. 安装 python3 的时候,make 的时候一直显示 checking for... ,进入死循环
      原因:系统时间的原因。如果系统时间比python的发布时间要早,make就会进入死循环
      解决:使用 date 命令重新设置一下系统时间就行了

    参考文档:https://blog.csdn.net/baidu_36748884/article/details/81365398

    -- 整理于网络,加上自己的理解,大家一起学习,进步就好
  • 相关阅读:
    如何判断PHP 是ts还是nts版的
    让IE支持placeholder属性
    解决点击浏览器后退按钮页面过期的问题
    git记住用户名密码
    php保存base64数据
    azure注册码
    SQL Server 2008 R2密钥序列号
    SQL允许远程访问
    PHP生成表格
    PHP发起get post put delete请求
  • 原文地址:https://www.cnblogs.com/shulipeng/p/14181219.html
Copyright © 2011-2022 走看看