I'm trying to run freeradius on an OS X machine and I have been reading
threads relating to issues people have had over the years when
receiving a message saying:
ERROR: Failed to initialize semaphore: Function not implemented
Running radiusd -X works fine on OS X but doing rc.radiusd start or
just radiusd gives the error. I'm guessing that the -X parameter gives
realtime logging information probably doesn't use semaphores as it may
only be a single thread.
I have downloaded the BSD code for semaphores and copied libsem.a and
the associated .h, .c and .o files to the /src/main directory. I've
gone into the Makefile and edited the libs line to look like this as
per the message at
http://www.mail-archive.com/[EMAIL PROTECTED]/
msg04260.html (I think there was a typo in the original message and I
interpreted it to really be this).
LIBS += -lradius $(SNMP_LIBS) libsem.a
Implementing this change or the alternate one suggested on the above
link has not changed the situation.
I am not an expert with linking libraries. OS X with developer tools
does have a semaphore.h file located in /usr/include. I would guess
that there may be a dynamic library somewhere in the OS. Could this be
conflicting with the BSD implementation I downloaded? What is the
process to get this to link properly?
Dave Watson
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
