Thanks for your reply Alan.

 > I've attempted to compile free radius 1.1.7 on a machine running
 NetBSD/amd64  without success...

  FreeRADIUS is in pkgsrc.

Yes, it is there. I suppose I'm obstinate, but I'd like the original sources to be compilable without having to patch them.

If the version there isn't 1.1.7,

The 2007Q2 pkgsrc, which I think is the most recent, contains FreeRADIUS 1.1.6.

the patches will let you build it on NetBSD.

If you understand them. :) It looks to me as though none of the patches in /usr/pkgsrc/net/freeradius/patches apply to files in ./src/modules/rlm_krb5.

 > At first configure couldn't find krb5.h and make failed:

  I've fixed that in CVS head.  If it can't find krb5.h, it doesn't
build the module.

Thanks.

 > so I ran configure again, explicitly telling it the path to krb5.h (with
 a freshly untar'ed source tree):

  All that does is refresh the source.  It does NOT delete any files
left over from a previous configure run.

Sorry, I meant I deleted the directory where I'd just run ./configure, executed 'tar jxf freeradius-1.1.7.tar.bz2' and started again in the new freeradius-1.1.7 directory.

 > % sh -c './configure CPPFLAGS=-I/usr/include/krb5 > configure.log 2>&1'

  Use CFLAGS, not CPPFLAGS.

OK.

 > Could you suggest a solution to this please?

  Edit src/modules/rlm_krb5/Makefile by hand.  It's tiny.

I did actually try that but didn't mention it because I thought it might have been a silly approach... I noticed ./src/modules/rlm_krb5/Makefile contains the line

include ../rules.mak

and ./src/modules/rules.mak contains ' contains the line

$(RLM_DIR)../../../Make.inc

and ./Make.inc contains the line:

CFLAGS = $(INCLUDE) -I/usr/include/krb5 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -Wall -D_GNU_SOURCE -DNDEBUG

(I don't know which directory RLM_DIR is but guess that path points to freeradius-1.1.7/Makefile.inc ?) so I thought ./src/modules/rlm_krb/Makefile would implicitly know to use -I/usr/include/krb5. Anyway, I'll try again now...

% ls
freeradius-1.1.7.tar.bz2
% tar jxf *
% cd freeradius-1.1.7
% /usr/bin/time sh -c './configure CFLAGS=-I/usr/include/krb5 > configure.log 2>&1'
       33.24 real        15.51 user        16.47 sys
% vi src/modules/rlm_krb5/Makefile

change the RLM_FLAGS line to

RLM_CFLAGS =     -I/usr/include/et -I/usr/include/krb5

(what's normally in /usr/include/et by the way? I've not heard of that directory.)

% /usr/bin/time sh -c 'gmake > gmake.log 2>&1'
       23.74 real        14.38 user        11.71 sys
% sed -n '920,$p' gmake.log
Making all in rlm_krb5...
gmake[6]: Entering directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src/modules/rlm_krb5' /usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/libtool --mode=compile gcc -I/usr/include/krb5 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -Wall -D_GNU_SOURCE -DNDEBUG -I/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src/include -I/usr/include/et -I/usr/include/krb5 -c rlm_krb5.c
mkdir .libs
gcc -I/usr/include/krb5 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -Wall -D_GNU_SOURCE -DNDEBUG -I/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src/include -I/usr/include/et -I/usr/include/krb5 -c rlm_krb5.c -fPIC -DPIC -o .libs/rlm_krb5.o
rlm_krb5.c: In function 'verify_krb5_tgt':
rlm_krb5.c:96: warning: implicit declaration of function 'krb5_princ_component'
rlm_krb5.c:96: error: 'c' undeclared (first use in this function)
rlm_krb5.c:96: error: (Each undeclared identifier is reported only once
rlm_krb5.c:96: error: for each function it appears in.)
rlm_krb5.c:96: error: invalid type argument of '->'
rlm_krb5.c:105: warning: passing argument 2 of 'krb5_kt_read_service_key' discards qualifiers from pointer target type
rlm_krb5.c: In function 'krb5_auth':
rlm_krb5.c:217: warning: initialization makes pointer from integer without a cast
rlm_krb5.c:219: warning: excess elements in struct initializer
rlm_krb5.c:219: warning: (near initialization for 'tgtname')
rlm_krb5.c:257: warning: pointer targets in assignment differ in signedness
rlm_krb5.c:258: warning: pointer targets in assignment differ in signedness
rlm_krb5.c:292: error: request for member 'length' in something not a structure or union rlm_krb5.c:293: error: request for member 'data' in something not a structure or union rlm_krb5.c:296: error: request for member 'length' in something not a structure or union rlm_krb5.c:297: error: request for member 'data' in something not a structure or union
gmake[6]: *** [rlm_krb5.lo] Error 1
gmake[6]: Leaving directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src/modules/rlm_krb5'
gmake[5]: *** [common] Error 2
gmake[5]: Leaving directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src/modules'
gmake[4]: *** [all] Error 2
gmake[4]: Leaving directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src/modules'
gmake[3]: *** [common] Error 2
gmake[3]: Leaving directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7/src'
gmake[1]: *** [common] Error 2
gmake[1]: Leaving directory `/usr/home/ray/installers/freeradius/1.1.7/freeradius-1.1.7'
gmake: *** [all] Error 2
%

Can you see what should be done about this?


Ray
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to