Ubuntu14.10安装subversion版本
安装了ubuntu-14.10版本后发现默认安装subversion 1.8. 而1.8版本与目前XP上使用的1.6版本无法兼容,网上搜索了下发现使用1.8版本的人并不多,为了避免开发环境切换带来的开销,暂不想将XP下也升级到1.8. 那只能ubuntu上安装1.6.
1.下载subversion-1.6.17.tar.gz
http://download.csdn.net/detail/sunwill_chen/8354589
2.下载subversion-deps-1.6.17.tar.bz2
http://download.csdn.net/detail/sunwill_chen/8354593
3.#apt-get install gcc make libssl-dev libexpat1-dev
4.#tar xvf subversion-1.6.17.tar.gz
5.#tar xvf subversion-deps-1.6.17.tar.bz2
6.#cd subversion-1.6.17
7.#./configure
8.#make && make install
9.#ln -s /usr/lib/i386-linux-gnu/libexpat.so /usr/lib/i386-linux-gnu/libexpat.so.0
10.查看svn版本号:
# svn --version
svn, version 1.6.17 (r1128011)
compiled Jan 12 2015, 20:05:45
问题:
1.configure: error: no XML parser was found: expat or libxml 2.x required
解决:apt-get install libxml2-dev
(注: 这个可以不需要安装,后面安装了libexpat1-dev才真正起作用)
2.make最后出现错误:
/home/tools/subversion-1.6.17/subversion/libsvn_ra_neon/.libs/libsvn_ra_neon-1.so: undefined reference to `xmlFreeParserCtxt'
/home/tools/subversion-1.6.17/subversion/libsvn_ra_neon/.libs/libsvn_ra_neon-1.so: undefined reference to `xmlParseChunk'
/home/tools/subversion-1.6.17/subversion/libsvn_ra_neon/.libs/libsvn_ra_neon-1.so: undefined reference to `xmlCreatePushParserCtxt'
collect2: error: ld returned 1 exit status
解决:经过分析代码发现没有EXPAT才会有这个问题,因为安装expat,
#apt-get install libexpat1-dev
3.运行svn发现库链接错误,
svn: error while loading shared libraries: libexpat.so.0: cannot open shared object file: No such file or directory
解决:使用dpkg -L libexpat1-dev安装在哪个目录,一看没有这个文件,做个软链接即可。
#ln -s /usr/lib/i386-linux-gnu/libexpat.so /usr/lib/i386-linux-gnu/libexpat.so.0
KUbuntu/Ubuntu 14.04 (降级)安装 SVN 1.7
Step 1: 增加源到 source.list
sudo add-apt-repository "deb http://extras.ubuntu.com/ubuntu saucy main"
sudo add-apt-repository "deb http://de.archive.ubuntu.com/ubuntu/ saucy main universe restricted multiverse"
Step 2: 删除 svn 1.8 package
sudo apt-get remove subversion libsvn1
Step 3: 更新源
sudo apt-get update
Step 4: 安装 svn 1.7
sudo apt-get install subversion=1.7.9-1+nmu6ubuntu3 libsvn1=1.7.9-1+nmu6ubuntu3 subversion-tools=1.7.9-1+nmu6ubuntu3
Step 5: 锁定 SVN to 1.7 to 防止自动升级
echo subversion hold | sudo dpkg --set-selections
echo libsvn1 hold | sudo dpkg --set-selections
echo libserf1 hold | sudo dpkg --set-selections
Step 6: 从源sources.list中移除 Step 1 增加的行
sudo gedit /etc/apt/sources.list
移除:deb http://extras.ubuntu.com/ubuntu saucy main
移除:deb http://de.archive.ubuntu.com/ubuntu/ saucy main universe restricted multiverse
Step 7: 更新源
sudo apt-get update
Step 8: 查看svn版本
svn --version
~$ svn --version
svn,版本 1.7.9 (r1462340)
Copyright (C) 2015 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
可使用以下的版本库访问模块:
* ra_neon : 通过 WebDAV 协议使用 neon 访问版本库的模块。
- 处理“http”方案
- 处理“https”方案
* ra_svn : 使用 svn 网络协议访问版本库的模块。 - 使用 Cyrus SASL 认证
- 处理“svn”方案
* ra_local : 访问本地磁盘的版本库模块。
- 处理“file”方案
* ra_serf : 通过 WebDAV 协议使用 serf 访问版本库的模块。
- 处理“http”方案
- 处理“https”方案
CentOS 6.6安装Subversion服务:http://www.linuxdiyf.com/linux/12753.html
Linux SVN服务配置Subversion版本控制:http://www.linuxdiyf.com/linux/10474.html
如何在CentOS 7中安装Subversion:http://www.linuxdiyf.com/linux/10171.html
Ubuntu下安装Subversion客户端及使用方法:http://www.linuxdiyf.com/linux/6236.html
Ubuntu下SubVersion服务安装设置:http://www.linuxdiyf.com/linux/5574.html