Ubuntu下安装apache+subversion过程记

因为用sudo apt-get install apache2 方式安装apache2的话,因为需要与svn整合,有一些必要的so文件需要重新编译,所以考虑直接用源码自己编译安装,注:俺是刚开始用linux,许多不懂的,都是网上查资料查来的,所以首先感谢广大网友的贡献吧,因为查了很多,所以具体哪些忘记了,这里就是不注链接了

在安装过程中,个人觉得还是切换一以root用户下安装来的简单一点,不然一不小心就是因为哪个文件没有读写权限而Fail掉了,比较麻烦,哈哈,所有后我来就是直接在root用户下安装了

准备工作:下载httpd.2.2.9.tar.gz 和subversion-deps-1.5.1.tar.bz subversion-1.5.1.tar.gz

1、安装apache2.2

tar zxvf httpd.2.2.9.tar.gz

cd httpd.2.2.9

./configure --enable-dav --enable-so --prefix=/opt/apache2.2

说明:--enable-dav允许Apache提供DAV协议支持;--enable-so允许运行时加载DSO模块, --prefix指定apache的安装目录

make

make install

说明:在configure与make很可能会出现一些fail,而往往是因为缺少一些必要的库,就直接安装一下apt-get install *****,即可,我安装出现过三个,反正这个比较直观

这样,apache 应该安装好了,测试一下,/opt/apache2/bin/apachectl -k start, 在浏览器里输入:http://locahost

正常情况下应该出现It works!

2、安装subversion

这个比较烦,主要为了对付这个,还真是烦搞了近一天来的,下载源码后,把两个解压到同一下目录下(两个压缩包里没有相同的文件)

cd subversion

./configure --with-apxs=/opt/apache2/bin/apxs --with-apr=/opt/apache2 --with-apr-util=/opt/apache2 --prefix=/opt/subversion

--with-apxs=/opt/apache2/bin/apxs:生成两个so,mod_authz_svn.so, mod_dav_svn.so

--with-apr=/opt/apache2 --with-apr-util=/opt/apache2 为了防止 apr不匹配

这一步也是一样,可能会有这样那样的库没有而fail,照样安装就OK了

make

这一步是关键啦,我就是一直在这时出错了,改来改去了,花了大部分时间

有一个ERROR:/usr/bin/ld: cannot find -lexpat

我先来一个apt-get install lexpat,找不到,呵呵俺刚用不知道库具体是怎么回事来的,后来查了一下lexpat得安装expat

ok, apt-get install expat,安装完毕,靠,还不行,出错信息还一样来的, 这下主真的很烦了

google吧,查一下,发现在会去读/usr/lib/libexpat.so,去看了一下,晕了,怎么没有libexpat.so, 重新apt-get install expat了一下,再看,还是没有,看来这下问题大了

再找再google, “但是/usr/lib下有/usr/lib/libexpat.so.1,于是做了一个 link,命令如下 ln -s /usr/lib/libexpat.so.1 /usr/lib/libexpat.so”,网上某位仁兄这样写了,哈哈,看来我有救了,去看了一下,我晕,我这里还不止一个来的

libexpat.so.1 libexpat.so.1.5.0

感觉还是1.5.0新一点,直接一点,免得麻烦,把libexpat.so.1.5.0复制一份,重命名libexpat.so

make

又出错了,不过,信息不一样了,说明上面这样做是可以的了

ERROR:relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC

这错误,简单的看来,似乎是因为32位不能用在64位,然后在某个地方加 -fPIC,哪个地方,怎么加就不知道了,看来菜鸟就是菜,没有办法,又只能google了去了,google了一大堆,呵呵,找到了

修改subversion/nero/src/Makefile,将CFLAGS = -g -O2 改成 CFLAGS = -fPIC -g -O2

哇 ,原来是在这里加-fPIC,这里加粗体,注意一下了,哈哈,如果是32位OS应该不会有这个错误的

不过我没有试

好了,make && make install,一切正常,OK,装好了

把 /opt/subversion/bin 加入到path 方便使用

vi /etc/profile

添加export PATH=$PATH:/opt/subversion/bin

好了,终于安装成功,哈哈,也没有别的意思,其实就是在自己的机器玩一下而已,主要是熟悉一下linux下的一些基本用法.

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/706273af2b12761268c18e0651aa01ba.html