对不起,标题不是很多,但到目前为止,我不能更具体......
我在网络中有两台 Ubuntu 14.04 计算机(服务器(应该在10.8.1.52
进行编译),客户端在10.8.1.42
。我安装了{{ 1}}通过distcc
并在服务器上使用此配置文件:
sudo apt-get install distcc
> cat /etc/default/distcc
STARTDISTCC="true"
ALLOWEDNETS="127.0.0.1 10.8.1.0/24"
LISTENER="10.8.1.52"
NICE="10"
JOBS=""
ZEROCONF="false"
也正在倾听:
distccd
在客户端上,我设置了DISTCC_HOSTS:
> sudo netstat -taupen | grep distcc
tcp 0 0 10.8.1.52:3632 0.0.0.0:* LISTEN 122 24182229 32372/distccd
我知道然后想在客户端(> echo $DISTCC_HOSTS
10.8.1.52
)上启动编译过程:
10.8.1.42
这编译了我的代码,但只在客户端编译,没有工作分配(虽然我编译了大约十几个.cpp文件)。
有人能给我一个暗示吗?
答案 0 :(得分:0)
如果您的错误显示 distcc found 0 available servers
:请检查您的防火墙是否确实没有阻止此端口。
一定要允许运行distcc的端口上的流量(默认是3632/tcp)
你还提到你编译了“十几个 .cpp 文件”。确保您正确设置了 g++ 编译器(我假设您的服务器上安装了编译器):
make -j100 CC=distcc CXX=distcc
在那个服务器上,distcc 需要到编译器的符号链接。如果它们尚不存在,请尝试此 python script。
为了进一步调查,github 上的文档说:
<块引用>如果遇到问题,强烈建议使用 DISTCC_VERBOSE=1 在客户端和服务器上的“--log-level debug”。