今天在编译Apache时候出现了几个错误,
首先是libexpat.so错误,然后出现libz.a错误,总结如下:
我的环境是
操作系统:Red Hat Enterprise Linux Server release 5 (Tikanga)
Linux webserver 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:14 EST 2007 x86_64 x86_64 x86_64 GNU/Linux
apache的版本:httpd-2.0.61.tar.gz
下面是这个错误的解决解决过程。
1 libexpat.so错误
错误现象:
/usr/lib/libexpat.so: could not read symbols: File in wrong format
解决方法:
编译时增加编译参数 –with-expat=builtin 。好像在64位服务器下编译脚本在定位系统 expat 支持时有些问题。通过指定expat,用系统自带的expat来编译就不存在这个问题了。
2 libz.a错误
错误现象:
/usr/local/lib/libz.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
解决方法:
重新安装 zlib-1.2.3.tar.gz
1. tar -zxvf zlib-1.2.3.tar.gz
2 .cd zlib-1.2.3
3. ./configure
vi Makefile
找到 CFLAGS=-O3 -DUSE_MMAP
在后面加入-fPIC,即变成CFLAGS=-O3 -DUSE_MMAP -fPIC
接下面步骤
make
make install
转载请注明:靠谱运维 » 编译apache出现的两个小错误libexpat.so总结