CentOS7.2 编译安装SVN1.9.5客户端

背景

原来想在Linux机上开Samba共享,在Windows机上把工作目录映射到网络驱动器,用Source Insight编辑代码后就不用来回同步文件了。

然而在使用中发现,Windows机用的SVN客户端版本是1.9.4,而CentOS自带的版本是1.7.14。

用Windows更新过SVN Work Directory后,一不小心就更到了SVN1.8版格式(应该可以选不更新格式吧?)

这样弄完,Linux机上就无法使用SVN了(使用1.7版格式,提示客户端版本太旧)。

网上搜RPM包但是CentOS木有更新的版本了,无奈只好琢磨编译安装最新版!这样两个平台都用1.9版的,就应该没问题了!

环境

[root@linuxidc ~]# cat /etc/RedHat-release 
CentOS Linux release 7.2.1511 (Core)

且是Minimal Install

安装

安装开发环境工具

[root@linuxidc ~]# yum -y groupinstall "Deveolpment tools"

这里也会把svn客户端安上,但是是1.7.14版本的,移除它

[root@linuxidc ~]# yum -y remove subversion

根据安装说明,这里需要几个依赖

安装依赖

[root@linuxidc ~]# yum -y installyuminstall Python-devel zlib openssl openssl-devel file-libs libtool libtool-devel

查看版本

[root@linuxidc ~]# rpm -qa | grep autoconf
autoconf-2.69-11.el7.noarch
[root@linuxidc ~]# rpm -qa | grep libtool
libtool-2.4.2-21.el7_2.x86_64
[root@linuxidc ~]# gcc --version
gcc (GCC) 4.8.520150623 (Red Hat 4.8.5-11)
Copyright (C) 2015 Free Software Foundation, Inc.

下载svn源码包

[root@linuxidc ~]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/subversion/subversion-1.9.5.tar.gz
[root@linuxidc ~]# tar zxvf subversion-1.9.5.tar.gz
[root@linuxidc ~]# cd subversion-1.9.5
[root@linuxidc subversion-1.9.5]# ll
-rw-rw-r--.  1100010002032 Mar 112013 aclocal.m4
-rwxrwxr-x.  1100010007726 Jul 272015 autogen.sh
-rw-rw-r--.  11000100094 Feb 232010 BUGS
drwxrwxr-x.  6100010004096 Nov 2121:57 build
-rw-rw-r--.  11000100048346 Jun 242015 build.conf
-rw-rw-r--.  110001000850308 Nov 2121:57 build-outputs.mk
-rw-rw-r--.  110001000325464 Nov 2121:07 CHANGES
-rw-rw-r--.  11000100014126 Jan 262015 COMMITTERS
-rwxrwxr-x.  110001000877735 Nov 2121:57 configure
-rw-rw-r--.  11000100055079 Nov 1712:00 configure.ac
drwxrwxr-x.  41000100066 Nov 2121:57 doc
-rw-rw-r--.  11000100023 Nov 2121:57 gen-make.opts
-rwxrwxr-x.  11000100010988 May 142015 gen-make.py
-rwxrwxr-x.  1100010004859 Aug  412:00 get-deps.sh
-rw-rw-r--.  11000100058579 Dec 122015 INSTALL
-rw-rw-r--.  11000100019889 Jan 302015 LICENSE
-rw-rw-r--.  11000100040217 Dec 102015 Makefile.in
-rw-rw-r--.  1100010001132 Apr 212016 NOTICE
-rw-rw-r--.  1100010002303 Jun  12016 README
drwxrwxr-x. 36100010004096 Nov 2121:57 subversion
drwxrwxr-x. 14100010004096 Nov 2121:57 tools
-rw-rw-r--.  11000100041944 Dec  72015 win-tests.py

使用自带脚本下载svn依赖(前面加了===的为get-deps.sh脚本下载的依赖)

[root@linuxidc subversion-
1.9.
5]# ./get-deps.
sh

[root@linuxidc
subversion-
1.9.
5
]# ll
-rw-rw-r–. 
1
1000 
1000 
2032 Mar
11 
2013
aclocal.m4
===drwxr-sr-x.
25
5000
10001 
4096 Feb 
8 
2012
apr
===drwxr-xr-x.
19 
500 
1000 
4096 Sep 
8 
2012 apr-
util
-rwxrwxr-x. 
1
1000 
1000 
7726 Jul
27 
2015 autogen.
sh

-rw-rw-r–. 
1
1000 
1000   
94 Feb
23 
2010
BUGS
drwxrwxr
-x. 
6
1000 
1000 
4096 Nov
21
21:
57
build
-rw-rw-r–. 
1
1000 
1000 
48346 Jun
24 
2015
build.conf
-rw-rw-r–. 
1
1000 
1000
850308 Nov
21
21:
57 build-
outputs.mk
-rw-rw-r–. 
1
1000 
1000
325464 Nov
21
21:
07
CHANGES
-rw-rw-r–. 
1
1000 
1000 
14126 Jan
26 
2015
COMMITTERS
-rwxrwxr-x. 
1
1000 
1000
877735 Nov
21
21:
57
configure
-rw-rw-r–. 
1
1000 
1000 
55079 Nov
17
12:
00
configure.ac
drwxrwxr
-x. 
4
1000 
1000   
66 Nov
21
21:
57
doc
-rw-rw-r–. 
1
1000 
1000   
23 Nov
21
21:
57 gen-
make
.opts
-rwxrwxr-x. 
1
1000 
1000 
10988 May
14 
2015 gen-
make
.py
-rwxrwxr-x. 
1
1000 
1000 
4859 Aug 
4
12:
00 get-deps.
sh

-rw-rw-r–. 
1
1000 
1000 
58579 Dec
12 
2015
INSTALL
-rw-rw-r–. 
1
1000 
1000 
19889 Jan
30 
2015
LICENSE
-rw-rw-r–. 
1
1000 
1000 
40217 Dec
10 
2015 Makefile.
in

-rw-rw-r–. 
1
1000 
1000 
1132 Apr
21 
2016
NOTICE
-rw-rw-r–. 
1
1000 
1000 
2303 Jun 
1 
2016
README
===drwxr-xr-x. 
6 
501 games 
4096 Oct
21 
2014
serf
===drwxr-xr-x. 
2 root root     
71 Dec
20 
2012 sqlite-
amalgamation
drwxrwxr
-x.
36
1000 
1000 
4096 Nov
21
21:
57
subversion
drwxrwxr
-x.
14
1000 
1000 
4096 Nov
21
21:
57
tools
-rw-rw-r–. 
1
1000 
1000 
41944 Dec 
7 
2015 win-
tests.py
===drwxr-xr-x.
14 
501 games 
4096 Apr
29 
2013 zlib

下载serf构建工具

[root@linuxidc subversion-1.9.5]# cd serf
[root@linuxidc serf]# wget http://prdownloads.sourceforge.net/scons/scons-local-2.3.0.tar.gz
[root@linuxidc serf]# tar zxvf scons-local-2.3.0.tar.gz

 按照如下顺序安装

安装apr

[root@linuxidc ~]# cd ~/subversion-1.9.5/apr
[root@linuxidc apr]# ./buildconf
[root@linuxidc apr]# ./configure
[root@linuxidc apr]# make 
[root@linuxidc apr]# makeinstall

安装apr-util

[root@linuxidc ~]# cd ~/subversion-1.9.5/apr-util
[root@linuxidc apr-util]# ./buildconf
[root@linuxidc apr-util]# ./configure --with-apr=/usr/local/apr/bin/apr-1-config
[root@linuxidc apr-util]# make 
[root@linuxidc apr-util]# makeinstall

安装serf

[root@linuxidc ~]# cd ~/subversion-1.9.5/serf
[root@linuxidc serf]# ln -s /root/subversion-1.9.5/serf/scons.py /usr/local/bin/scons
[root@linuxidc serf]# scons APR=/usr/local/apr/bin/apr-1-config APU=/usr/local/apr/bin/apu-1-config OPENSSL=/usr PREFIX=/usr/local
[root@linuxidc serf]# scons install

安装svn-client

[root@linuxidc ~]# cd ~/subversion-1.9.5/
[root@linuxidc ~]# ./configure --with-serf=/usr/local --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
[root@linuxidc ~]# make
[root@linuxidc ~]# makeinstall

使用

[root@linuxidc serf]# svn --version
svn, version 1.9.5 (r1770682)
   compiled Jan  42017, 07:40:17 on x86_64-unknown-linux-gnu

Copyright (C) 2016 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE fileformore information.
Subversion is open source software, see http://subversion.apache.org/
The following repository access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.3.8 (compiled with 1.3.8)
  - handles 'http' scheme
  - handles 'https' scheme

The following authentication credential caches are available:

* Plaintext cache in /root/.subversion
* GPG-Agent

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/221842.html<

(0)
管理的头像管理
上一篇2025-04-15 05:31
下一篇 2025-04-15 05:33

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注