Dependency detection problem for rlm_rediswho

Brian Candler B.Candler at
Wed May 25 12:01:26 CEST 2011

I am trying a ./configure --with-experimental-modules

This stage completes successfully, but when I do 'make' it dies because it
tries to build rlm_rediswho, even though hiredis.h is missing.

./configure did detect this correctly for rlm_redis, and set targetname to
empty in the Makefile:

=== configuring in ./src/modules/rlm_redis (/u/home/brian/git/freeradius-server/./src/modules/rlm_redis)
configure: running /bin/bash ./configure '--prefix=/usr/local'  '--with-experimental-modules' '--enable-ltdl-install' --cache-file=/dev/null --srcdir=.
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for redisConnect in -lhiredis... no
configure: WARNING: hiredis libraries not found. Use --with-redis-lib-dir=<path>.
checking for hiredis.h... no
configure: WARNING: hiredis headers not found. Use --with-redis-include-dir=<path>.
configure: WARNING: silently not building rlm_redis.
configure: WARNING: FAILURE: rlm_redis requires: libhiredis hiredis.h.
configure: creating ./config.status
config.status: creating Makefile

But it didn't for rlm_rediswho:

=== configuring in ./src/modules/rlm_rediswho (/u/home/brian/git/freeradius-server/./src/modules/rlm_rediswho)
configure: running /bin/bash ./configure '--prefix=/usr/local'  '--with-experimental-modules' '--enable-ltdl-install' --cache-file=/dev/null --srcdir=.
configure: creating ./config.status
config.status: creating Makefile

So I think the in rlm_rediswho needs expanding somehow.

Whilst rlm_rediswho doesn't directly use hiredis.h, it does
#include <rlm_redis.h>
and that file has
#include <hiredis/hiredis.h>

I'm not sure of the best solution, short of duplicating the configure logic
between rlm_redis and rlm_rediswho.

For the moment, my workaround is:
./configure --with-experimental-modules --without-rlm_rediswho



P.S. I notice that src/modules/stable contains "rlm_ns_mta_md5" but there
appears to be no such module. Is this folded into rlm_pap now?

More information about the Freeradius-Devel mailing list