mod_auth_mysql.so模块的问题

mod_auth_mysql.so模块的问题

我在http://modules.apache.org/下载了
mod_auth_mysql.tgz   21-Aug-2005 23:26  14K GZIP compressed tar archive

编译都是正常的,我在httpd.conf里面加载后重起APACHE,出现如下问题:

[root@guoxin mod_auth_mysql]# /usr/local/apache2/bin/apachectl restart
httpd: module "mod_auth_mysql.c" is not compatible with this version of Apache (found 20020628, need 20020903).
Please contact the vendor for the correct version.

说的是版本不兼容,可我的APACHE确实是2.0.45版本的,并且在mod_auth_mysql
安装说明文档里也明确地这么说的:
.....
This module is for apache 2.0.x only !!
......
为什么会出现不兼容的情况?

请大虾们帮我看看,谢谢!
看来没有别的办法了,于是我重新下载了最新的版本mod_auth_mysql-3.0.0
可又出现了新的错误:

Syntax error on line 1089 of /usr/local/apache2/conf/httpd.conf:
Cannot load /usr/lib/httpd/modules/mod_auth_mysql.so into server: /usr/lib/httpd/modules/mod_auth_mysql.so: undefined symbol: ap_escape_logitem

1089 行我是这么写的:
LoadModule mysql_auth_module /usr/lib/httpd/modules/mod_auth_mysql.so
在编译安装的时候没有要求指明安装路径,默认就安装在/usr/lib/httpd/modules下面
如果我把/usr/lib/httpd/modules/mod_auth_mysql.so拷贝到现在使用的APACHE的/modules下面,
httpd.conf 做相应修改LoadModule mysql_auth_module modules/mod_auth_mysql.so
错误依旧。

这个是个什么错误啊?请大家帮偶瞧瞧
谢谢
我在编译mod_auth_mysql.c这个模块的时候出现了下面警告
[root@guoxin mod_auth_mysql-3.0.0]# apxs -c -L/usr/lib/mysql -I/usr/include/mysql -lmysqlclient -lm -lz mod_auth_mysql.c -DCRYPT
/usr/lib/httpd/build/libtool --silent --mode=compile gcc -prefer-pic -O2 -march=i386 -mcpu=i686 -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -pthread -DNO_DBM_REWRITEMAP -I/usr/include/httpd -I/usr/include/mysql  -c -o mod_auth_mysql.lo mod_auth_mysql.c && touch mod_auth_mysql.slo
mod_auth_mysql.c: In function `format_remote_host':
mod_auth_mysql.c:901: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_filename':
mod_auth_mysql.c:912: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_server_name':
mod_auth_mysql.c:916: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_server_hostname':
mod_auth_mysql.c:920: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_protocol':
mod_auth_mysql.c:924: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_method':
mod_auth_mysql.c:928: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_args':
mod_auth_mysql.c:933: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_request':
mod_auth_mysql.c:947: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_uri':
mod_auth_mysql.c:951: warning: return makes pointer from integer without a cast
/usr/lib/httpd/build/libtool --silent --mode=link gcc -o mod_auth_mysql.la -rpath /usr/lib/httpd/modules -module -avoid-version -I/usr/include/mysql  -L/usr/lib/mysql -lmysqlclient -lm -lz  mod_auth_mysql.lo -DCRYPT


请问,是什么原因?
我加栽mod_auth_mysql.so这个模块后不能正常启动APACHE是不是与这些警告有关?
在编译这个模块的时候要使用apxs这个命令,我的系统是RH8,有自带的APACHE,不过我没有
用这个自带的APACHE,目前用的是自己下载原代码安装的,安装在/usr/local/apache2
apxs这个命令是RH自带的APACHE的命令,所以我不能用这个命令,我改用自己安装的
/usr/local/apache2/bin/apxs 这个命令
可又出现新的问题,整个编译安装mod_auth_mysql.so的过程中报错如下:

[root@guoxin mod_auth_mysql-3.0.0]# /usr/local/apache2/bin/apxs -cia mod_auth_mysql.c
/usr/local/apache2/build/libtool --silent --mode=compile gcc -prefer-pic  -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -g -O2 -pthread -I/usr/local/apache2/include  -c -o mod_auth_mysql.lo mod_auth_mysql.c && touch mod_auth_mysql.slo
mod_auth_mysql.c: In function `format_remote_host':
mod_auth_mysql.c:901: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_filename':
mod_auth_mysql.c:912: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_server_name':
mod_auth_mysql.c:916: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_server_hostname':
mod_auth_mysql.c:920: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_protocol':
mod_auth_mysql.c:924: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_method':
mod_auth_mysql.c:928: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_args':
mod_auth_mysql.c:933: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_request':
mod_auth_mysql.c:947: warning: return makes pointer from integer without a cast
mod_auth_mysql.c: In function `format_uri':
mod_auth_mysql.c:951: warning: return makes pointer from integer without a cast
/usr/local/apache2/build/libtool --silent --mode=link gcc -o mod_auth_mysql.la  -rpath /usr/local/apache2/modules -module -avoid-version    mod_auth_mysql.lo
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' mod_auth_mysql.la /usr/local/apache2/modules
/usr/local/apache2/build/libtool --mode=install cp mod_auth_mysql.la /usr/local/apache2/modules/
cp .libs/mod_auth_mysql.lai /usr/local/apache2/modules/mod_auth_mysql.la
cp .libs/mod_auth_mysql.a /usr/local/apache2/modules/mod_auth_mysql.a
ranlib /usr/local/apache2/modules/mod_auth_mysql.a
chmod 644 /usr/local/apache2/modules/mod_auth_mysql.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/apache2/modules
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/apache2/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so( manual pages.
----------------------------------------------------------------------
Warning!  dlname not found in /usr/local/apache2/modules/mod_auth_mysql.la.
Assuming installing a .so rather than a libtool archive.
chmod 755 /usr/local/apache2/modules/mod_auth_mysql.so
chmod: failed to get attributes of `/usr/local/apache2/modules/mod_auth_mysql.so': No such file or directory
apxs:Error: Command failed with rc=65536

在/usr/local/apache2/modules/下,mod_auth_mysql.so这个模块始终无法生成

请大虾帮忙分析一下,到底是什么原因!
我换了好几个版本的mod_auth_mysql.c,还是出现下面的问题。
Warning!  dlname not found in /usr/local/apache2/modules/mod_auth_mysql.la.
Assuming installing a .so rather than a libtool archive.
chmod 755 /usr/local/apache2/modules/mod_auth_mysql.so
chmod: failed to get attributes of `/usr/local/apache2/modules/mod_auth_mysql.so': No such file or directory
apxs:Error: Command failed with rc=65536
我用RH自带的APACHE apxs命令没有出现这个问题,可以编译安装成功,但是在加栽的时候
出现如2楼的问题,如果换成我自己安装的APACHE的apxs命令时,在安装的时候就出现
Warning!  dlname not found in /usr/local/apache2/modules/mod_auth_mysql.la.
Assuming installing a .so rather than a libtool archive.
chmod 755 /usr/local/apache2/modules/mod_auth_mysql.so
chmod: failed to get attributes of `/usr/local/apache2/modules/mod_auth_mysql.so': No such file or directory
apxs:Error: Command failed with rc=65536

试过N遍都是同样的问题

注:我的APACHE在安装时配置如下:

./configure --prefix=/usr/local/apache2 --with-mysql=/usr/local/mysql --enable-shared=max --enable-module=so

是不是我在configure 时有什么不对的地方?不过,这个APACHE现在的其他服务都是没有什么问题的
这个问题好像好难啊
别沉底啊
回去研究研究