大家好,小弟是新手,最近忙着配个邮件服务器,在安装 httpd-2.2.4的时候出现问题,首先是在编译的最后一行出现config.status: executing default commands
我的编译文件是:#./configure
--prefix=/usr/local/apache
--sysconfdir=/etc/httpd
--enable-so
--enable-ssl
--with-ssl=/usr/local/ssl
--enable-track-vars
--enable-rewrite
--with-zlib
--enable-mods-shared=most
--enable-suexec
--with-suexec-caller=daemon
然后在make之后就出现这样的问题:
xlate/xlate.lo dbd/apr_dbd_sqlite3.lo dbd/apr_dbd.lo dbd/apr_dbd_sqlite2.lo dbd/apr_dbd_pgsql.lo -luuid -lrt -lcrypt -lpthread -ldl -lsqlite3 /usr/lib/libexpat.la /usr/local/src/httpd-2.2.4/srclib/apr/libapr-1.la -luuid -lrt -lcrypt -lpthread -ldl
/usr/lib/libexpat.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[3]: *** [libaprutil-1.la] 错误 1
make[3]: Leaving directory `/usr/local/src/httpd-2.2.4/srclib/apr-util'
make[2]: *** [all-recursive] 错误 1
make[2]: Leaving directory `/usr/local/src/httpd-2.2.4/srclib/apr-util'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/usr/local/src/httpd-2.2.4/srclib'
make: *** [all-recursive] 错误 1
请问这是什么问题?我应该如何去解决!
wq_h2977 于 2010-08-28 10:27:12发表:
apache2安装时报/usr/lib/libexpat.so: could not read symbols: File in wrong format
关键字: apache
今天在64位的unix服务器上面安装apache服务器,执行./configure --prefix=.....成功,但在make时报
/usr/lib/libexpat.so: could not read symbols: File in wrong format,网上查询了很多解决办法,但在服务器上试验都不行!
apache在编译的时候连接的库文件是默认的32位的库文件,而unix服务器是64位的,因此需要在编译的时候指定64位库文件的位置。明白了这个错误产生的原因,那么更改起来就容易了。apache在执行./configure后,相关的配置参数保存在MakeFile文件,该文件存放在/httpd-2.0.63/srclib/apr-util下面。文件中包含了编译时相关库文件的位置,打开该文件可以看到
可以看到APRUTIL_LIBS 这个参数,同时到/usr下面,可以看到同时有lib及lib64两个文件夹,将lib64文件夹中的libexpat.la文件加入到APRUTIL_LIBS 中即可,修改后的Mikefile文件如下
然后执行 make及make install即可完成安装!
wq_h2977 于 2010-08-28 10:25:29发表:
也许这篇帖子对你有用!