On Thu, 23 Apr 2009, Nick Kew wrote:
Mike Diggins wrote:On Wed, 22 Apr 2009, Nick Kew wrote:On 22 Apr 2009, at 01:28, Mike Diggins wrote:Anyone using mod_auth_xradius-0.4.6 with Apache 2.x under Solaris 10 (or any version of Solaris)? I can't get it to compile and I don't know why. I could use a hand.Tell us what the problem is, and maybe someone can help.This is what I get. diggins@rh1<~/mod_auth_xradius-0.4.6># ./configurechecking for apr_memcache library in /usr/local/apache2/lib... no checking for apr_memcache library in /usr/local/lib... no checking for apr_memcache library in /usr/lib... no checking for apr_memcache library in /usr/local/apache2/lib... no configure: *** memcache library not found.It's looking for apr_memcache, as referenced on the mod_auth_xradius webpage. That's actually wrong: apr_memcache is now integrated into apr, so you shouldn't need to install it. The configuration should be updated. But it appears to be non-critical:configure: creating ./config.status config.status: creating Makefile config.status: creating include/mod_auth_xradius.h config.status: creating include/mod_auth_xradius_config.h config.status: executing depfiles commandsSo it didn't actually break on that (though I suspect that may get you a partially-crippled build).libradius/radlib.h:196: error: parse error before "xrad_cvt_int"libradius/radlib.h:196: warning: type defaults to `int' in declaration of`xrad_cvt_int'libradius/radlib.h:196: warning: data definition has no type or storageclasslibradius/radlib.h:206: error: parse error before "u_int32_t"Looks like u_int32_t is not defined at this point: another minor breakage in the build system. What happens if you typedef it earlier in libradius/radlib.h? typedef unsigned int u_int32_t; (or otherwise, if unsigned int isn't 32-bit on your architecture). Also, I notice you're using gcc. SunStudio cc is generally the preferred option on Solaris. If you have it, you can select it with by setting CC on the configure line.
I don't know C, but I stuck the line 'typedef unsigned int u_int32_t;' near the top of radlib.h, and it compiles a bit further, but still fails:
gcc -DHAVE_CONFIG_H -I. -I. -I./include -I./libradius -L/usr/local/lib -R/usr/local/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -L/usr/openwin/lib -R/usr/openwin/lib -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -I/usr/local/apache2/include -I/usr/local/apache2/include -I/usr/local/apache2/include -I/usr/local/include -g -O2 -MT libradius_la-radlib.lo -MD -MP -MF .deps/libradius_la-radlib.Tpo -c libradius/radlib.c -fPIC -DPIC -o .libs/libradius_la-radlib.o
In file included from libradius/radlib_private.h:35, from libradius/radlib.c:45: libradius/radlib.h:32: error: redefinition of `u_int32_t' libradius/porting.h:5: error: `u_int32_t' previously declared here *** Error code 1 make: Fatal error: Command failed for target `libradius_la-radlib.lo'I did try with the SunStudio compiler as well, but it has its own problems:
libtool: compile: unable to infer tagged configuration libtool: compile: specify a tag with `--tag' -Mike --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx