专栏首页张戈的专栏Linux/SUSE安装svn客户端的问题记录

Linux/SUSE安装svn客户端的问题记录

这 2 天负责架设一个支付业务的 webserver 测试项目,安装 svn 客户端的时候出现了各种问题,来记录下。

一、简单的说下安装过程:

#下载
wget http://subversion.tigris.org/downloads/subversion-1.6.9.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.9.tar.gz
#解压
tar zxvf subversion-1.6.9.tar.gz
tar zxvf subversion-deps-1.6.9.tar.gz
#编译
cd subversion-1.6.9
./configure --prefix=/usr/local/svn --without-berkeley-db
make
make install

执行 svn --version 查看是否有版本输出,如果提示找不到命令,则如下编辑/etc/profile

vim /etc/profile

在后面追加 SVN 变量即可:

#追加
export SVN_HOME=/usr/local/svn
export PATH=$SVN_HOME/bin:$PATH
#刷新
source /etc/profile

二、安装过程中出现的问题:

1、提示 OpenSSL 缺失

configure 配置 SVN 时可能提示如下错误信息: configure: error: We require OpenSSL; try --with-openssl

解决方法:编译前先安装了一个 openssl 即可

cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.0a.tar.gz
tar -zxvf openssl-1.0.0a.tar.gz
cd openssl-1.0.0a
./config
./config -t
make depend
make
make test
make install

安装之后会在/usr/local 下生成一个 ssl 目录,编译 SVN 时加上 openssl 路径即可:

./configure --prefix=/usr/lcoal/svn --without-berkeley-db --with-openssl=/usr/local/ssl
2. zlib 依赖缺失

configure 配置 SVN 时可能提示如下错误信息:

configure: error: subversion requires zlib

解决办法:安装 zlib

cd /usr/local/src
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -xvzf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install
3、expat 依赖缺失

configure 配置 SVN 时可能提示如下错误信息:

configure: error: no XML parser was found: expat or libxml 2.x required

解决办法:安装 expat

cd /usr/local/src
wget http://nchc.dl.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz
tar -zxvf expat-2.1.0.tar.gz
cd expat-2.1.0
./configure
make
make install
3、SQLite 依赖缺失

报错信息如下:

get the sqlite 3.7.6.3 amalgamation from:
http://www.sqlite.org/sqlite-amalgamation-3.7.6.3.tar.gz
unpack the archive using tar/gunzip and copycopy sqlite3.c from the
resulting directory to:
/home/software/subversion-1.7.0-rc3/sqlite-amalgamation/sqlite3.c
configure: error: Subversion requires SQLite

如果按照文章开头的方法安装,则不会出现此错误

解决办法:加入sqlite3.c 模块后再编译

①、下载报错信息里面的sqlite-amalgamation-3.7.6.3.tar.gz 并解压:

wget http://www.sqlite.org/sqlite-amalgamation-3.7.6.3.tar.gz

②、在 svn 源码目录创建sqlite-amalgamation 文件夹

cd subversion-1.6.9

mkdir sqlite-amalgamation

③、拷贝sqlite-amalgamation-3.7.6.3.tar.gz 解压后的 sqlite3.c 到 sqlite-amalgamation 文件夹:

cp ../sqlite-amalgamation-3070800/sqlite3.c ./sqlite-amalgamation/

④、重新编译 svn 即可。

4、/usr/local/ssl/lib/libssl.a: could not read symbols: Bad value

报错信息如下:

/usr/bin/ld: /usr/local/ssl/lib/libssl.a(s23_clnt.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/local/ssl/lib/libssl.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [libserf-0.la] Error 1
make[1]: Leaving directory `/usr/local/src/subversion-1.6.9/serf'
make: *** [external-all] Error 1

解决办法:添加 --without-serf 参数重新编译 subversion 即可,比如:

./configure --prefix=/usr/local/svn --without-berkeley-db --without-serf
5、不支持 http://方式

全部安装完成,使用如下命令配置 svn 的时候:

svn co http://192.168.1.101/deploy/trunk/project

会提示“无法识别的 url 方案(一般需要 svn://,http://,file:///等开头)"http://192.168.1.101..."

Ps:如果是按照文章开始的方法安装,应该不会出现这个问题。

解决办法:安装 neon 让 svn 来支持 http 和 https 方式

wget http://www.webdav.org/neon/neon-0.29.6.tar.gz tar
tar zxvf neon-0.29.6.tar.gz tar
cd neon-0.29.6
./configure --prefix=/usr/local/neon --with-ssl=openssl
make
make install

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 升级CentOS6.5内核,开启Nginx的fastopen和reuseport特性

    前面,张戈博客在折腾 Nginx 的 SSL 优化时,注意到前人在 Nginx 的 listen 配置中,添加了 fastopen=3 reuseport 这 ...

    张戈
  • libmemcached编译安装报错解决记录

    我负责的几个公司内部网站,仅集成了 php 原生 memcache 组件,不支持 memcached 分片存储的自动容灾方案,近期出现过几例因 memcache...

    张戈
  • 张戈博客惊现WordPress恶意代码,各位WP博主要注意下了!

    不经意看到了哼哼猪的 《博主们注意了!赶快检查下你的 WordPress 里面是否包含恶意代码》一文,就好奇的检查了一下,结果。。。尼玛居然还真中招了!难怪老是...

    张戈
  • Windows 远程管理WinRM

    根据 WinRM SDK (msdn2.microsoft.com/aa384426),Windows 远程管理是“WS 管理协议的 Microsoft 实施,...

    张善友
  • 【PAT乙级】C语言竞赛

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    喜欢ctrl的cxk
  • 一起撸个简单粗暴的Tv应用主界面的网格布局控件(上)

    这一篇是真的隔了好久了~~,也终于可以喘口气来好好写博客了,这段时间实在是忙不过来了,迭代太紧。好,废话不多说,进入今天的主题。

    请叫我大苏
  • GlusterFS客户端进程分析

    16683 root      20   0  398m  16m 2796 S  0.0  0.2   2:31.58 /usr/sbin/glusterd ...

    党志强
  • 广州美国领事馆面签经历

      参加微软2015 MVP全球峰会,漫长等待微软邀请函时提前填写好DS-160签证表单,收到邀请函复核DS-160并重新填写提交确认,登录缴费网站,缴费,预约...

    杨强生
  • 利用TROPOMI看看疫情期间NO2排放的变化

    TROPOspheric Monitoring Instrument(TROPOMI)是搭载在Copernicus Sentinel-5 Precursor(S...

    bugsuse
  • 让我们一起来撸个简单粗暴的Tv应用主界面的网格布局控件!

    这一篇是真的隔了好久了~~,也终于可以喘口气来好好写博客了,这段时间实在是忙不过来了,迭代太紧。好,废话不多说,进入今天的主题。

    Android技术干货分享

扫码关注云+社区

领取腾讯云代金券