[distcc] Using distccd with LaunchDaemon on OS X

Steve Checkoway steve at cs.washington.edu
Fri Mar 31 01:07:50 GMT 2006


Hi,

After struggling to get a cross compiler for powerpc-unknown-linux- 
gnu working, I set up distccd on my (much, much faster) G5 running OS  
X. I'm quite pleased with the results and I just wanted to share my  
LaunchDaemon .plist that I'm using in case anyone might find it helpful.

I used darwin ports to install distcc so the binary resides in /opt/ 
local/bin and I used crosstool (well, sort of, it didn't really work  
but I left the files in the same place) to build the cross compiler  
so the path is /opt/crosstool/gcc-3.4.5-glibc-2.3.4/powerpc-unknown- 
linux-gnu/bin. I'm not sure if --allow and --no-fork are required  
when --inetd is used, but it works. Lastly, to keep from interfering  
with Xcode's distccd,  I'm using port 13632.

Here is /Library/LaunchDaemons/distccd.steve.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http:// 
www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
         <key>Disabled</key>
         <false/>
         <key>Label</key>
         <string>distccd.steve</string>
         <key>UserName</key>
         <string>nobody</string>
         <key>GroupName</key>
         <string>nobody</string>
         <key>ProgramArguments</key>
         <array>
                 <string>/opt/local/bin/distccd</string>
                 <string>--inetd</string>
                 <string>--allow</string>
                 <string>192.168.1.3</string>
                 <string>--no-fork</string>
         </array>
         <key>Sockets</key>
         <dict>
                 <key>Listeners</key>
                 <dict>
                         <key>SockType</key>
                         <string>stream</string>
                         <key>SockPassive</key>
                         <true/>
                         <key>SockProtocol</key>
                         <string>TCP</string>
                         <key>SockFamily</key>
                         <string>IPv4</string>
                         <key>SockServiceName</key>
                         <integer>13632</integer>
                 </dict>
         </dict>
         <key>inetdCompatibility</key>
         <dict>
                 <key>Wait</key>
                 <false/>
         </dict>
         <key>EnvironmentVariables</key>
         <dict>
                 <key>DISTCCD_PATH</key>
                 <string>/opt/crosstool/gcc-3.4.5-glibc-2.3.4/powerpc- 
unknown-linux-gnu/bin</string>
                 <key>DISTCC_SAVE_TEMPS</key>
                 <string>0</string>
                 <key>TMPDIR</key>
                 <string>/tmp/</string>
         </dict>
         <key>Nice</key>
         <integer>15</integer>
</dict>
</plist>

To start it up, run
$ sudo launchctl load /Library/LaunchDaemons/distccd.steve.plist

I hope somebody finds this useful. Thanks for the great tool.

- Steve

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2375 bytes
Desc: not available
Url : http://lists.samba.org/archive/distcc/attachments/20060330/3ba09284/smime.bin


More information about the distcc mailing list