我从Distcc遇到了一个错误。我正在使用存储库中的软件包。这是我的配置
$ cat /etc/default/distcc | grep -v #
STARTDISTCC="true"
ALLOWEDNETS="127.0.0.0/16 10.0.0.0/8"
LISTENER="0.0.0.0"
NICE="10"
JOBS="3"
ZEROCONF="true"
$ cat /etc/distcc/hosts | grep -v #
+zeroconf
$ dpkg -l | grep distcc
ii distcc 3.1-6 amd64 simple distributed compiler client and server
ii distcc-pump 3.1-6 amd64 pump mode for distcc a distributed compiler client and server
$ cat ~/.distcc/zeroconf/hosts
10.16.114.52:3632/16
$ ifconfig
...
inet addr:10.16.114.52 Bcast:10.16.115.255 Mask:255.255.252.0
...
当我运行一堆汇编(我生成的1000 C文件)时,例如
distcc gcc -o 41.o -c 41.c
我有错误,
distcc[26927] (dcc_parse_hosts) Warning: /home/amacdonald/.distcc/zeroconf/hosts contained no hosts; can't distribute work
distcc[26927] (dcc_zeroconf_add_hosts) CRITICAL! failed to parse host file.
distcc[26927] (dcc_build_somewhere) Warning: failed to distribute, running locally instead
distcc[26929] (dcc_parse_hosts) Warning: /home/amacdonald/.distcc/zeroconf/hosts contained no hosts; can't distribute work
distcc[26929] (dcc_zeroconf_add_hosts) CRITICAL! failed to parse host file.
您需要一个带有运行Distcc的计算机列表的主机文件。使用此路径:
~/.distcc/hosts
例如:
10.0.0.1 10.0.0.2 10.0.0.42
即使使用主机环境变量和hosts文件,在/etc和/etc和/usr/local/etc中,我仍然找不到任何主机。
检查日志后:
DISTCCD_OPTS="${DISTCCD_OPTS} --log-file /var/log/distccd.log"
说:
(dcc_warn_masquerade_whitelist) CRITICAL! /usr/local/lib/distcc not found. You must see up masquerade (see distcc(1)) to list whitelisted compilers or pass --enable-tcp-insecure. To set up masquerade automatically run update-distcc-symlinks.
我必须运行:
sudo update-distcc-symlinks
sudo ln -s /usr/lib/distcc /usr/local/lib/distcc
使其正常工作。