Building on MacOS X Server 10.6.3

Pelletier, Robert
Fri Jun 11 15:44:54 UTC 2010

I know the way to create a daemon and lauch it changed in MacOS X 10.5/10.6. It is now via lauchctl.

I tried the modifications. Make worked in clntlib and dccifd but fails in the source root directory.

-----Message d'origine-----
De : Vernon Schryver [] 
Envoyé : 11 juin 2010 11:37
À :; Pelletier, Robert
Objet : RE: Building on MacOS X Server 10.6.3

> From: "Pelletier, Robert" <>

> Here's the output with the patch done.
> dccifd.c: In function 'main':
> dccifd.c:585: warning: 'daemon' is deprecated (declared at /usr/include/stdlib.h:289)

What's that about?  Do I need to change ./configure to not detect
a daemon() function on MacOS X and fall back on clntlib/daemon.c ?
The hits for
aren't clear to me.

> cc    dccifd.o ../thrlib/libthr.a  ../clntlib/libclnt.a ../dcclib/libdcc.a -lm -lresolv -o dccifd
> ld: duplicate symbol _dcc_ctxts_lock in ../clntlib/libclnt.a(clnt_unthreaded.o) and ../thrlib/libthr.a(clnt_threaded.o)
> collect2: ld returned 1 exit status
> make[1]: *** [dccifd] Error 1
> make: *** [all] Error 2

If the threaded library was made by running `make` at the top or
in the thrlib directory, then something else is probably defined
on MacOS X in thrlib/libthr.a.  A way to discover what is:

 - delete clntlib/libclnt.a
 - edit clntlib/Makefile to delete  clnt_unthreaded.c from SRCS
 - run `make` in the clntlib directory
 - run `make` in the dccifd directory

That should cause `ld` to complain about whatever is not defined.

Of course, other things such as cdcc won't build after that change.

Vernon Schryver

More information about the DCC mailing list

Contact by mail or use the form.