在为CentOS 6.5构建httpd-2.4.7 RPM时找不到库`/usr/lib64/libexpat.la'

时间:2014-02-14 17:03:41

标签: apache2 centos6 rpmbuild

我正在跟进http://httpd.apache.org/docs/2.4/platform/rpm.html的指示 为CentOS6.5构建httpd-2.4.7 RPM。但我得到以下错误 - 找不到库`/usr/lib64/libexpat.la'。

rpmbuild -tb httpd-2.4.7.ta​​r.bz2

..... / usr / lib64 / apr-1 / build / libtool --silent --mode = link gcc -std = gnu99 -pthread -O2 -g -pie -o htpasswd htpasswd.lo passwd_common.lo / usr / lib64 / libaprutil-1 .la -ldb-4.3 -lexpat -ldb-4.3 /usr/lib64/libapr-1.la -lpthread -ldl -lcrypt
libtool:link:找不到库/usr/lib64/libexpat.la' or unhandled argument / usr / lib64 / libexpat.la'
make [2]: * [htpasswd]错误1
make [2]:离开目录/root/rpmbuild/BUILD/httpd-2.4.7/support'<br> make[1]: *** [all-recursive] Error 1<br> make[1]: Leaving directory / root / rpmbuild / BUILD / httpd-2.4.7 / support'
make:*
[all-recursive]错误1
错误:/var/tmp/rpm-tmp.iSxbcs(%build)的退出状态不佳
RPM构建错误:     来自/var/tmp/rpm-tmp.iSxbcs(%build)的错误退出状态

我运行 yum搜索libexpat ,已安装该软件包。

[root @ localhost下载] #yum search libexpat
加载的插件:fastermirror,refresh-packagekit,security
从缓存的主机文件加载镜像速度
 * base:centos.les.net
 * extras:mirror.its.sfu.ca
 *更新:mirror.csclub.uwaterloo.ca
=======匹配:libexpat ========================== compat-expat1.i686:用于解析XML文档的库 compat-expat1.x86_64:用于解析XML文档的库
expat.i686:XML解析器库
expat.x86_64:XML解析器库
expat-devel.i686:使用expat开发应用程序的库和头文件 expat-devel.x86_64:使用expat开发应用程序的库和头文件 mingw32-expat.noarch:expat XML解析器库的MinGW Windows端口

任何人都知道如何解决这个问题。提前谢谢。

史蒂夫

3 个答案:

答案 0 :(得分:1)

INSTALL文档声明您可以:

./configure --with-included-apr

使用包含libexpat.la的APR和APR-util库并附带httpd。

答案 1 :(得分:0)

.la文件用于libtool知道如何链接库。它可能在expat-devel中,应作为.spec添加到BuildRequires文件中。

答案 2 :(得分:0)

在安装apache之前安装apr和apr-util。

libexpat.la附带了apr-util的源代码。

尝试将apr和apr-util的源代码目录复制到apache的srclib目录中并使用./configure --with-included-apr。这解决了我的问题。

cp -r /path/of/apr /path/of/apache/srclib/

cp -r /path/of/apr-util /path/of/apache/srclib/

./configure --with-included-apr