distcc root
Posted by bronson Wed, 26 Oct 2005 17:02:00 GMT
(clearing junk off the laptop before Detch gets it…)
The biggest limitation to using distcc is that you must have identical compilers on all the computers participating in the compile. Identical. Their recommendation of matching minor version numbers just wasn’t enough. I’m lucky it bombed out instead of generating corrupted binaries.
I was trying to add two Ubuntu machines (gcc-3.3.6) to a Gentoo ebuild (gcc-3.3.5+). The emerge that should have run all night came to a halt after about ½ hour. It sucks that distcc bails out completely when it runs into an error on a remote machine. It should log the error and re-try locally.
This mismatched-gcc problem can be worked around. Just copy the following files onto on all machines participating (skip the gentoo arch-specific stuff unless you’re emerging):
as cc gcc i686-pc-linux-gnu-c++ i686-pc-linux-gnu-gcc strip c++ g++ gcc-3.3 i686-pc-linux-gnu-g++ i686-pc-linux-gnu-strip
Then, launch distcc with:
$ DISTCCD_PATH=DIR distccd --allow 192.168.1.109 --no-detach --log-stderr --log-level warning
Really, though, it’s probably not worth the trouble (and danger!) unless all machines are running the exact same distribution.
