BSD Ports

devel/distcc 3.4_2 DragonFly

Distribute compilation of C(++) code across machines (text monitor)

System
DragonFly
Repository
DPorts
Maintainer
[email protected] (as in FreeBSD)
License
GPLv2
Categories
devel, python
Package size
249.9 KiB, 894.2 KiB installed

Description

distcc is a program to distribute compilation of C code across several machines on a network. distcc should always generate the same results as a local compile, is simple to install and use, and is often significantly faster than a local compile.

Unlike other distributed build systems, distcc does not require all machines to share a filesystem, have synchronized clocks, or to have the same libraries or header files installed. Machines can be running different operating systems, as long as they have compatible binary formats or cross-compilers.

distcc sends the complete preprocessed source code across the network for each job, so all it requires of the volunteer machines is that they be running the distccd daemon, and that they have an appropriate compiler installed.

This package comes with a text-based monitor to inspect the load on the cluster, and how it is distributed among the various distcc nodes.

In the other systems

SystemPortVersion
DragonFlydevel/distcc3.4_2
FreeBSDdevel/distcc3.4_3
OpenBSDdevel/distcc3.4p0v0
NetBSDdevel/distcc3.4
MidnightBSDdevel/distcc3.4_2
HardenedBSDdevel/distcc3.4_3
GhostBSDdevel/distcc3.4_3

Install

Binary package:

pkg install distcc

From DPorts:

cd /usr/dports/devel/distcc && make install clean

Dependencies

Run dependencies 2

No port depends on this one.

Configuration

No options to configure.

Service scripts
none
Flavors
distcc-gtk-3.4_2

Message after installing

WARNING: distcc[d] performs NO AUTHENTICATION at all and should
ONLY be used in trusted networks!

Distccd now requires the --allow (-a) argument when running
in daemon mode. This option restricts distcc to a specific
network, by default this port uses 127.0.0.0/8, you should
change this by specifying your own distccd_flags in
/etc/rc.conf, see the script in /usr/local/etc/rc.d/distccd
for a template.

Additionally it is recommended that you add entries to
/etc/syslog.conf to record all distccd log messages to a file
such as /var/log/distccd.log.

Example syslog.conf entry:

!distccd
*.*					/var/log/distccd.log

The daemon runs on port 3632 by default. You can change that
value by calling distccd with the -p parameter, e.g.
`distccd -p 4711'. Do not edit the rc.d script to achieve this
instead override the value of distccd_flags in /etc/rc.conf.

Note that remote daemons currently won't work if they cannot
resolve the reverse DNS of the master machine

Those upgrading from pre-3.3 must run update-distcc-symlinks on
every server machine, and add manually (see MASQUERADING of distcc(1))
those compilers it does not detect.