How to Setup distcc in Gentoo
This Howto is a quick and easy setup for distcc in Gentoo Linux. It's not comprehensive, but should work for most setups. YMMV.
Gentoo Linux is a powerful distribution that allows you to keep your applications up to date with their Portage system using the emerge command, much like Debian's apt-get. The difference between Gentoo and Debian, though, is that Debian's packages are precompiled binaries; the vast majority of Gentoo's "ebuilds" are source code packages that you compile when you emerge that ebuild. This means longer install times (especially initial setup for Gentoo), but it also means a more responsive system, as gcc can optimize the binary specific to your architecture.
distcc allows you to distibute the often lengthy process of compiling applications by sending source files across a network, having volunteer machines compile, then receiving the compiled files back and doing the linking.
To setup distcc according to this howto, you'll need a few things. First, you'll need a machine with Gentoo Linux installed. We'll call this machine the server since it will be distributing jobs to other machines. You'll also need one or more extra machines, which we'll call clients. You can have zero or more clients; of course, it does no good to use distcc if you have zero. In general, the more clients you have participating, the quicker the compilation will go for a particular ebuild.
I should also note that some packages will either fail when trying to use distcc, or they will disable distcc when compiling. In particular, X and Mozilla ebuilds, I'm told, disable distcc when they compile because it introduces problems in the process, such as random segmentation faults. I compiled Mozilla in parallel with distcc, however, and did not have any problems. Again, YMMV.
Now that you know what distcc is and what it does, if this is right for you, you can go ahead and configure your system to use distcc.
Gentoo Linux is a powerful distribution that allows you to keep your applications up to date with their Portage system using the emerge command, much like Debian's apt-get. The difference between Gentoo and Debian, though, is that Debian's packages are precompiled binaries; the vast majority of Gentoo's "ebuilds" are source code packages that you compile when you emerge that ebuild. This means longer install times (especially initial setup for Gentoo), but it also means a more responsive system, as gcc can optimize the binary specific to your architecture.
distcc allows you to distibute the often lengthy process of compiling applications by sending source files across a network, having volunteer machines compile, then receiving the compiled files back and doing the linking.
To setup distcc according to this howto, you'll need a few things. First, you'll need a machine with Gentoo Linux installed. We'll call this machine the server since it will be distributing jobs to other machines. You'll also need one or more extra machines, which we'll call clients. You can have zero or more clients; of course, it does no good to use distcc if you have zero. In general, the more clients you have participating, the quicker the compilation will go for a particular ebuild.
I should also note that some packages will either fail when trying to use distcc, or they will disable distcc when compiling. In particular, X and Mozilla ebuilds, I'm told, disable distcc when they compile because it introduces problems in the process, such as random segmentation faults. I compiled Mozilla in parallel with distcc, however, and did not have any problems. Again, YMMV.
Now that you know what distcc is and what it does, if this is right for you, you can go ahead and configure your system to use distcc.
