前言
距离上一篇发表已经过去了5年零2个多月,这次重新开始写技术博客,理由和原来一样,也就是想把自己学习和工作中遇到的问题和知识记录下来,今天记录一下Linux CentOS 8通过编译安装svn
的过程。
下载SVN
下载地址:链接: https://subversion.apache.org/download.cgi
进入下载页面后,我们可以看到当前source code的推荐版本是1.14.2,直接点击下载源码即可:
下载好之后将源码上传至指定目录:
输入命令tar -zxvf subversion-1.14.2.tar.gz
进行解压之后,即可看到svn的源码目录,如下图所示:
最后我们输入命令mv ./subversion-1.14.2 /usr/local/svn/source
将源码移动到指定目录,计划将svn安装在/usr/local/svn的根目录下。
编译安装SVN
下载完毕后,开始编译源码安装,进入源码所在的source目录后,执行配置(configure)命令同时指定安装路径:
./configure --prefix=/usr/local/svn
如果控制台没有报错那么直接运行命令make && make install
即可完成编译和安装,但是这里报错了,需要根据提示信息去补充安装svn所依赖的部分组件,首先看一下我们的报错信息:
如上图所示,提示缺少Apache可移植运行库(APR)这个支持库,它是ApacheHTTP服务器的支持库,提供了一组映射到下层操作系统的API。完整的APR包含3个开发包,分别是:APR
,APR-util
和APR-iconv
,每一个开发包分别独立开发并且拥有自己的版本。APR-util
包含了一些常用的开发组件,结合上图的提示信息,我们在安装svn之前必须安装APR
和APR-util
。
安装APR和APR-util
首先打开APR的官方网站:https://apr.apache.org/:
如上图所示,打开主页后我们可以清晰的看到官方推荐的APR
和APR-util
的版本分别是APR 1.7.4
和APR-util 1.6.3
,所以我们直接点击左侧的Download!去下载这两个版本的源码即可:
下载成功后将源码上传至指定目录,这里我将安装svn依赖的各种组件库统一放到/usr/local/svn/dependPackage
目录中:
如上图所示,接下来分别解压之后编译安装即可。APR-util
安装依赖于APR
,因此需要首先安装APR
,进入APR
源码目录,依次进行配置、编译、安装即可:
./configure --prefix=/usr/local/apr && make && make install
之后再执行命令make && make install
进行编译安装即可。
如上图所示,我们已经成功编译安装了APR
支持库。接下来安装APR-util
。同样的进入APR-util
目录,依次进行配置、编译、安装即可,注意此处需要通过--with-apr
配置项来指定APR
的目录:
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make && make install
但是安装时候报错了,提示信息如下:
如上图所示,报错原因是缺少另一个库——Expat,所以接下来我们需要先安装Expat。
安装Expat
Expat的官网地址是:https://libexpat.github.io/
我们在Expat的首页可以清晰的看到关于Expat的解释:
What is Expat?
Welcome to Expat, a stream-oriented XML parser library written in C.
Expat excels with files too large to fit RAM, and