Distcc(分布式编译)(方法1)

服务器端(计算机名为:zhimingubtpc.local):

$ sudo apt-get install distcc


$ sudo vi /etc/default/distcc

按a或i进入编辑模式

STARTDISTCC="true"   (默认为false)

ALLOWEDNETS="127.0.0.1 10.0.10.0/16"

LISTENER="" (默认为127.0.0.1,建议清空,否则会失败)

按Esc键退出编辑模式

:wq (保存并退出)


启动distcc服务:


$ sudo /etc/init.d/distcc start


$ sudo vi /etc/hostname

按a或i进入编辑模式

zhimingubtpc.local

按Esc键退出编辑模式

:wq (保存并退出)



客户端:

$ sudo apt-get install distcc

$ sudo vi /etc/default/distcc

按a或i进入编辑模式

STARTDISTCC="true"   (默认为false)

ALLOWEDNETS="127.0.0.1" (注:如果仅作客户端,仅允许自己即可)

LISTENER="`ifconfig | grep '10.0' | cut -d: -f2 | awk '{ print $1}' | head -n1`"


(也可LISTENER="127.0.0.1"或LISTENER="")


按Esc键退出编辑模式

:wq (保存并退出)


$ sudo vi /etc/distcc/hosts


按a或i进入编辑模式


#+zeroconf    (即将该行注释掉,否则会报dcc_readx ERROR:failed to read:Connection reset by peer错误)


按Esc键退出编辑模式

:wq (保存并退出)


启动distcc服务:


$ sudo /etc/init.d/distcc start

$ vi ~/.bashrc  (在最后添加)

按a或i进入编辑模式

export DISTCC_HOSTS='localhost zhimingubtpc.local'

export PATH=/usr/lib/distcc:/usr/bin:/bin

按Esc键退出编辑模式

:wq (保存并退出)

$ source ~/.bashrc

查看下gcc路径:

$ which gcc  (如果显示/usr/lib/distcc/gcc则是说明环境变量生效了)


验证:


1、可在编译时在server端执行top查看是否有distccd发起的cclpus任务

2、可以查看server端/var/log/distccd.log日志的大小及日志内容

本文转自linux博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/1350565如需转载请自行联系原作者


yangzhimingg

你可能感兴趣的:(操作系统,awk)