RHEL3 only provides a 2.x version of mod_auth_mysql which is not sufficient for all. If you try to compile it on a stock server it will fail. I have gone ahead and pasted the fix that we had to do in order to get it to compile. I also posted the entire error at the bottom for search engines.
Edit mod_auth_mysql.c, simply change to your correct path. The below is for a stock mysql3
#include /usr/include/mysql/mysql.h
You need to change the mysql include to the correct mysql.h, the default is what it causing the problems. After that it should compile with:
apxs -L/usr/lib/mysql -c -lmysqlclient -lm -lz mod_auth_mysql.c
apxs -i mod_auth_mysql.la
chmod 755 /usr/lib/httpd/modules/mod_auth_mysql.so
That should be it! Below is the full error:
mod_auth_mysql-3.0.0]# apxs -c mod_auth_mysql.c
/usr/bin/libtool --silent --mode=compile gcc -prefer-pic -O2 -g -pipe -march=i386 -mcpu=i686 -DSSL_EXPERIMENTAL_ENGINE -I/usr/kerberos/include -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -pthread -I/usr/include/httpd -c -o mod_auth_mysql.lo mod_auth_mysql.c && touch mod_auth_mysql.slo
mod_auth_mysql.c:269:19: mysql.h: No such file or directory
mod_auth_mysql.c:379: syntax error before "MYSQL"
mod_auth_mysql.c:379: warning: no semicolon at end of struct or union
mod_auth_mysql.c:384: syntax error before '}' token
mod_auth_mysql.c:384: warning: data definition has no type or storage class
mod_auth_mysql.c:386: syntax error before "connection"
mod_auth_mysql.c:386: warning: initialization makes integer from pointer without a cast
mod_auth_mysql.c:386: warning: excess elements in scalar initializer
mod_auth_mysql.c:386: warning: (near initialization for `connection')
mod_auth_mysql.c:386: warning: excess elements in scalar initializer
mod_auth_mysql.c:386: warning: (near initialization for `connection')
mod_auth_mysql.c:386: warning: excess elements in scalar initializer
mod_auth_mysql.c:386: warning: (near initialization for `connection')
mod_auth_mysql.c:386: warning: data definition has no type or storage class
mod_auth_mysql.c: In function `close_connection':
mod_auth_mysql.c:396: request for member `handle' in something not a structure or union
mod_auth_mysql.c:397: request for member `handle' in something not a structure or union
mod_auth_mysql.c:398: request for member `handle' in something not a structure or union
mod_auth_mysql.c: In function `open_db_handle':
mod_auth_mysql.c:453: syntax error before "mysql_conn"
mod_auth_mysql.c:458: request for member `handle' in something not a structure or union
mod_auth_mysql.c:462: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:466: request for member `host' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:471: request for member `user' in something not a structure or union
mod_auth_mysql.c:475: request for member `user' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:481: request for member `db' in something not a structure or union
mod_auth_mysql.c:486: request for member `handle' in something not a structure or union
mod_auth_mysql.c:487: request for member `handle' in something not a structure or union
mod_auth_mysql.c:491: request for member `db' in something not a structure or union
mod_auth_mysql.c:500: request for member `handle' in something not a structure or union
mod_auth_mysql.c:500: `mysql_conn' undeclared (first use in this function)
mod_auth_mysql.c:500: (Each undeclared identifier is reported only once
mod_auth_mysql.c:500: for each function it appears in.)
mod_auth_mysql.c:501: request for member `handle' in something not a structure or union
mod_auth_mysql.c:506: request for member `host' in something not a structure or union
mod_auth_mysql.c:508: request for member `host' in something not a structure or union
mod_auth_mysql.c:512: request for member `handle' in something not a structure or union
mod_auth_mysql.c:512: request for member `host' in something not a structure or union
mod_auth_mysql.c:520: request for member `handle' in something not a structure or union
mod_auth_mysql.c:535: request for member `user' in something not a structure or union
mod_auth_mysql.c:537: request for member `user' in something not a structure or union
mod_auth_mysql.c:539: request for member `handle' in something not a structure or union
mod_auth_mysql.c:540: request for member `handle' in something not a structure or union
mod_auth_mysql.c:544: request for member `db' in something not a structure or union
mod_auth_mysql.c:548: request for member `handle' in something not a structure or union
mod_auth_mysql.c:549: request for member `handle' in something not a structure or union
mod_auth_mysql.c: In function `create_mysql_auth_dir_config':
mod_auth_mysql.c:564: `MYSQL_PORT' undeclared (first use in this function)
mod_auth_mysql.c:565: `MYSQL_UNIX_ADDR' undeclared (first use in this function)
mod_auth_mysql.c: In function `get_mysql_pw':
mod_auth_mysql.c:1020: `MYSQL_RES' undeclared (first use in this function)
mod_auth_mysql.c:1020: `result' undeclared (first use in this function)
mod_auth_mysql.c:1064: request for member `handle' in something not a structure or union
mod_auth_mysql.c:1065: request for member `handle' in something not a structure or union
mod_auth_mysql.c:1069: request for member `handle' in something not a structure or union
mod_auth_mysql.c:1072: `MYSQL_ROW' undeclared (first use in this function)
mod_auth_mysql.c:1072: syntax error before "data"
mod_auth_mysql.c:1073: `data' undeclared (first use in this function)
mod_auth_mysql.c: In function `get_mysql_groups':
mod_auth_mysql.c:1106: `MYSQL_RES' undeclared (first use in this function)
mod_auth_mysql.c:1106: `result' undeclared (first use in this function)
mod_auth_mysql.c:1131: request for member `handle' in something not a structure or union
mod_auth_mysql.c:1132: request for member `handle' in something not a structure or union
mod_auth_mysql.c:1136: request for member `handle' in something not a structure or union
mod_auth_mysql.c:1142: `MYSQL_ROW' undeclared (first use in this function)
mod_auth_mysql.c:1142: syntax error before "data"
mod_auth_mysql.c:1143: `data' undeclared (first use in this function)
apxs:Error: Command failed with rc=65536
use apxs to do more :)
Why don't you use -i and -a options of apxs?
-i - installs the module in libexec
-a - activates the module(adds it to the httpd.conf)
-------------------------------------------
One Planet, One Internet!
We Are All Connected!