linux svn loading,【Linux】SVN安装,安装subversion,实现windows和Ubuntu共享

转自:https://blog.csdn.net/ncc1995/article/details/96309798?locationNum=11&fps=1

作者:ncc1995

Linux系统

安装svn就是在Ubuntu中安装subversion,因为是老师分的服务器,并不是root用户,整个过程就麻烦了许多。

1、非root用户安装软件

这时候只有通过源码来安装。

以apr为例(我最先安的apr)

找到apr软件的下载地址,Ubuntu系统我一般下载.tar.gz的文件

在当前用户文件夹下执行

wget

一般来说在哪个文件夹下运行,就是下载到哪个文件夹了。

但是我遇到一个问题,就是说我的文件夹是/home/ncc,直接运行上面命令会提示没有权限,执行下面命令就可以了

cd /home/ncc && wget

解压文件

tar xzvf apr-1.7.0.tar.gz

然后源代码中有configure文件,执行

./configure --prefix=/home/ncc/software/apr

目录要提前创建好。而且prefix前面一定要加  --  !!!!我就是忘了,然后后面安的时候路径一直不对,一直说我没有权限,因为它的默认路径是/usr/local/apr,这个不是root用户访问不了的。

接下来运行make && make install就可以了,它会自动安到上面自定义的路径中。

2、安装subversion所需的各种依赖

我查了好多网页,其中apr和apr-util是都必须要安的,我就先安了这两个,但是要注意的是,apr和apr-util版本是要互相对应的。比如我安的apr-1.7.0,对应的apr-util-1.6.1。

安完了这两个之后我就直接去安subversion了,这时候它还需要什么依赖会提示,之后就按照它的提示继续去安各种包。

1、安装apr

这个比较简单,按照步骤一步一步来就可以,我中间遇到一个比较智障的问题,就是上面说的prefix前忘了加 --

下载源码文件:wget

tar xzvf apr-1.7.0.tar.gz

cd apr-1.7.0

./configure --prefix=/home/ncc/software/apr(apr为自己创建的安装目录)

make

make install

2、安装apr-util(版本与apr对应)

下载源码文件:wget

tar xzvf apr-util-1.6.1.tar.gz

cd apr-util-1.6.1

./configure --prefix=/home/ncc/software/apr-util --with-apr=/home/ncc/software/apr

make

make install

3、安装sqlite

这一部分是在安了一下subversion之后,提示说还需要安sqlite,并在命令行中给出了所要求的版本以及下载链接,所以安这个的时候一定要注意版本问题!!

下载压缩文件:wget

unzip sqlite-amalgamation-3081101

mv sqlite-amalgamation-3081101 subversion-1.12.0(subversion要先现在并解压好)

mv sqlite-amalgamation-3081101 sqlite-amalgamation(重命名,不然会找不到sqlite)

4、安装openssl

这个是因为安装serf时候需要的,我试了一下电脑中有的OpenSSL,发现不行,需要自己安。

下载文件:wget

tar xzvf openssl-1.0.2s.tar.gz

cd openssl-1.0.2s

./config -fPIC --prefix=/home/lichongchong/software/openssl/ enable-shared

make

make install

5、安装serf

由于安装的是1.3.9版本的serf,所以需要用scons来安装,不能用make。

下载源码文件:wget

tar xzvf scons-3.0.5.tar.gz

cd scons-3.0.5

python setup.py install(在这之前又安了一下Python)

scons --version

下载serf源码文件:wget

tar xjf serf-1.3.9.tar.bz2

cd serf-1.3.9

scons PREFIX=serf APR=/home/lichongchong/software/apr APU=/home/lichongchong/software/apr-util OPENSSL=/home/lichongchong/software/openssl

错误1:print 'Warning: Used unknown variables:', ', '.join(unknown.keys())

解决:打开文件注释掉这句话

错误2:cannot use a string pattern on a bytes-like object

解决:

uid-20637781-id-5829797.html

6、安装subversion

下载文件:wget

tar subversion-1.12.0.tar.gz

cd subversion-1.12.0

./configure --prefix=/home/lichongchong/software/subversion --with-apr=/home/lichongchong/software/apr --with-apr-util=/home/lichongchong/software/apr-util --enable-maintainer-mode --with-serf=/home/lichongchong/software/serf

make

make install

错误3:configure: error: Subversion requires LZ4 >= r129, or use --with-lz4=internal

解决:./configure命令添加 --with-lz4=internal选项

错误4:configure: error: Subversion requires UTF8PROC

解决:./configure命令添加  --with-utf8proc=internal

./configure --prefix=/home/lichongchong/software/subversion --with-apr=/home/lichongchong/software/apr --with-apr-util=/home/lichongchong/software/apr-util --enable-maintainer-mode --with-serf=/home/lichongchong/software/serf --with-lz4=internal --with-utf8proc=internal

错误5:configure: error: failed to recognize APR_INT64_T_FMT on this platform

解决:用vim打开configure

把下面这三句话注释了,就可以继续./configure操作了

# if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then

# as_fn_error $? "failed to recognize APR_INT64_T_FMT on this platform" "$LINENO" 5

# fi

错误6:libtool:error: '/usr/local/apr/lib/libapr-1.la' is not a valid libtool archive

解决:apr-util 需要依赖apr,在apr-util的lib目录下的la文件中将对apr库的依赖路径修改一下,应该是自动会改,不清楚为什么没有改,手动改了之后就好了。

错误7:svn: error while loading shared libraries: libserf-1.so.1: cannot open shared object file: No such file or directory

解决:可以看出是动态链接库没配好,因为是非root用户,百度到的去/etc下修改是行不通的。但是!可以载~/.bashrc里面配置环境变量,这个是没用限制的!方法如下!配置完以后一定要运行source ~/.bashrc!!!!!!

下面是Linux下非root用户安装软件的一般流程:

获取源代码,常用wget方式直接从url下载,ubuntu可以用apt-get source来获取仓库中软件源代码;

解压源代码安装包,多为gzip过的tar包,一般使用tar -zxvf xxx.tar.gz即可;

切换到解压后的目录,运行 ./configure。./configure –help可以列出配置项,非root用户最重要的配置项是安装目录prefix,例如 ./configure –prefix=/path/to/bin。在无法自动找到依赖库位置的情况下,用 –with-xx-dir=xxx 的形式配置依赖库位置;

编译源代码并复制可执行文件到指定的安装目录: make &&  make install。这两条命令可以分开执行,make时指定 -j 参数并行编译,能显著减少编译耗时(单进程编译GCC需要几个小时,开启并行编译后可缩短到十几分钟);

使用export PATH=/path/to/bin:$PATH更新PATH变量。命令行窗口运行此命令只对本次会话中有效,可将其写到.bashrc或者.bash_profile中;

如果安装的是动态链接库,则需要更新动态链接库路径: export LD_LIBRARY_PATH=/path/to/library:$LD_LIBRARY_PATH。最好将此命令写在.bashrc文件中,用户下次打开会话时自动执行。

第5、6步是非常必须的!!!一定要配置环境变量,不然无法使用!!我安完后运行svn --version,提示没有安subversion,我都惊呆了~~~~~~

改libaprutil-1.la文件时,没有区分出l和1的差别,导致文件好久都没打开!!!!!!!!!

安了整整一天,使用以及windows安装等我安的时候再同步记录.....................

-----------------------------------------------------------------------------------------------------------------------------

Linux下配置

1、创建仓库

mkdir /home/ncc/svn

svnadmin create /home/ncc/svn/repo0

2、修改配置

cd /home/ncc/svn/repo0/conf

ls

vim svnserve.conf

改下面四个地方,分别是:

匿名访问

授权用户写权限

指定用户配置文件

指定权限配置文件

2c2f621a11ee88293510a457c6457e6a.png

在conf目录下还有passwd文件,在里面添加用户。

a397dd355f55a767d0bb2e255418ef80.png

修改authz文件

9bdf940a204fc5fdda99a8dcb07f151a.png

配置组的信息和组的权限,组内我只加了我自己一个用户,配置的权限是在本库内有读写权限。也可根据上面的例子配置用户信息和用户权限。

然后就可以启动svn了

svnserve -d -r svn/repo0

路径为自己创建的仓库。

————————————————

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

原文链接:https://blog.csdn.net/ncc1995/article/details/96309798

阅读(651) | 评论(0) | 转发(0) |

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值