Building on MacOS X Server 10.6.3

Pelletier, Robert pelletierr@csdhr.qc.ca
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 [mailto:vjs@calcite.rhyolite.com] 
Envoyé : 11 juin 2010 11:37
À : dcc@calcite.rhyolite.com; Pelletier, Robert
Objet : RE: Building on MacOS X Server 10.6.3

> From: "Pelletier, Robert" <pelletierr@csdhr.qc.ca>

> 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 http://www.google.com/search?q=macos+x+daemon+deprecated
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    vjs@rhyolite.com




More information about the DCC mailing list

Contact vjs@rhyolite.com by mail or use the form.