我在安装httpd-2.2.21时发现以下错误:
checking for APR-util version 1.2.0 or later... no
configure: error: APR-util version 1.2.0 or later is required
我已经安装了apr-1.4.5,apr-util-1.3.12 . 然后我配置:
./configure --prefix = / usr / local / apache --with-apr = / usr / local / apr / bin / apr-1-config --with-apr-util = / usr / local / apr-util / bin / apu-1-config --enable-so --enable -dav --enable-maintainer-mode --enable-rewrite
我不知道为什么 .
6 回答
下载Apache(
httpd 2.4
)时,有一个名为/srclib
的目录 .使用
cd /srclib
进入该目录 . 打开浏览器并转到http://apr.apache.org/download.cgi并将.apr文件下载到目录中 .解压缩并将其解压缩到srclib目录中 . 解压缩后,请确保将其重命名为“apr”;例:
现在,它应该从该文件夹中读取
.apr
文件 . 之后它也会要求apr-utils
;确保您遵循相同的程序 .PS:
/usr/local
中的apr文件是已经构建的文件 . 所以他们不会工作 .你需要安装 apr-util-1.5.4
从archive.apache.org下载
看一下文档,您应该将顶级目录作为with-apr和with-apr-util选项的参数 .
试试这个:
我在旧的apache httpd版本中没有看到这个错误,新的apache包中包含了srclib文件夹下的apr源代码,所以如果你看到这个错误,只需添加./configure
如果已经安装了apr和apu捆绑(确保安装了libapr1-dev和libaprutil1-dev),请不要为apr传递任何参数 .
如果你想使用srcdir中包含的apr和apu,
--with-included-apr
将足以添加为参数 . 外部编译的apr / apu目前有错误 . 如果您想拥有最新版本,请更新源代码并重新编译 .我发现我在Solaris 11下使用httpd-2.2.22遇到了这个问题 . 我的config.log显示测试apr-util版本的程序产生了编译错误,因为apu_version.h包含apr_version.h,但测试程序没有包含apr include目录的-I指令 . 我通过在CPPFLAGS中明确提供apr include指令解决了这个问题 . 适应您的示例,它看起来像这样:
请注意,我还修改了--with-apr和--with-apr-util子句 . 我认为这些应该指向顶级目录而不是配置程序 . 因人而异 .