在编译安装apache2.2.22时,在make步骤出现了如下错误

libtool: install: error: cannot install `libaprutil-1.la' to a directory
make[2]: *** [install] 错误 1
make[2]: Leaving directory `/tmp/httpd-2.2.22/srclib/apr-util'
make[1]: *** [install-recursive] 错误 1
make[1]: Leaving directory `/tmp/httpd-2.2.22/srclib'
make: *** [install-recursive] 错误 1

一开始主要看下面的ERROR部分了,以为是apr的版本问题。重新卸载了系统自带的apr以及apr-until软件,手动编译安装了低版本的。

[root@lamp apr-1.4.5]# tar zxvf apr-1.4.5-tar.gz
[root@lamp apr-1.4.5]# cd apr-1.4.5/
[root@lamp apr-1.4.5]# ./configure --prefix=/usr/local/apr-httpd/
[root@lamp apr-1.4.5]# make && make install
[root@lamp apr-1.4.5]#  cd ..

接下来安装apr-until

[root@lamp apr-util-1.4.1]# tar zxvf apr-util-1.4.1.tar.gz
[root@lamp apr-util-1.4.1]# cd apr-util-1.4.1
[root@lamp apr-util-1.4.1]# ./configure --prefix=/usr/local/apr-util-httpd/ --with-apr=/usr/local/apr-httpd/
[root@lamp apr-util-1.4.1]# make && make install
[root@lamp apr-util-1.4.1]# cd ..

从新编译apache,但是还是报错,错误同上。很是不解。

经查证发现,我在一开始编译的时候,安装目录的名称编译错了,删除了一下,又重新编译过一次,然后就开始出现这种错误。会不会是./configure过一次之后导致文件安装的时候有些不干净或什么原因呢?试一下

[root@lamp ~]# make clean

哇塞!!好多文件被清除了。再次重新编译apache。问题已经解决,顺利编译完成。