Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
distcc and ccache
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
AthlonRob
n00b
n00b


Joined: 19 Jan 2003
Posts: 37

PostPosted: Mon Jan 20, 2003 7:27 am    Post subject: distcc and ccache Reply with quote

I'm pulling my hair out here and think I need a few pointers... :-)

I want to use distcc and ccache because I think I'm going to have to do a lot of compiling in order to get java working properly.

The first thread I found just said I needed to add CC='distcc' and CXX='distcc g++' (and the servers line) to my make.conf file... that was, unfortunately, ignored by portage. So I started getting a little more in depth. I added the CC and CXX values to the MAKEOPTS line - but that caused:

Code:
make: *** No rule to make target `g++''. Stop.


And I haven't even begun to look in to getting ccache working, but think it will be basically the same.

Another post mentioned needing to comment out the CC= and CXX= lines in /etc/env.d/05gcc because they were overriding the values set in make.conf. No dice, make.conf's values are still being ignored.

It just seems like every tidbit of information I'm running in to is outdated, unfortunately.

So, I ask... can anybody who has distcc and/or ccache working with 1.4r2 let me in on exactly how they did this? I would be forever grateful.

It would be way cool if down the line we could just specify the distcc hosts and that we wanted to use distcc and ccache in our make.conf file and gentoo would take care of all this for us... I suppose it is too late for that to make it in 1.4, though. :-)

Rob
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Mon Jan 20, 2003 10:07 am    Post subject: Reply with quote

https://forums.gentoo.org/viewtopic.php?p=92735#92735

Useful trick (compiling the kerrnel), so can can see whether disctcc actually works, without worrying about make.conf.

I also needed this tip,
and this one make make it all work smoothly.

But java: I doubt whether distcc works when compiling java.
Back to top
View user's profile Send private message
AthlonRob
n00b
n00b


Joined: 19 Jan 2003
Posts: 37

PostPosted: Mon Jan 20, 2003 6:36 pm    Post subject: Reply with quote

I must be completely losing my mind.

I emerged distcc

I added:
Code:
CC="dgcc"
CXX="dg++"

to make.conf, at the end.

I created dgcc and dg++ as:
Code:
#!/bin/sh
ccache distcc gcc $@ #modified for g++ in dg++


That should work, shouldn't it?

I read all through the posts (their whole threads) you posted... the only one left I don't think I've tried is the actual portage hack mentioned here. However, that mentions portage 2.0.46r2, and I'm on 2.0.46r9.

It is as if make.conf is being totally, completely, and utterly ignored. It was read once, as my CFLAGS and CXXFLAGS appear in emerge info, but doesn't seem to be getting read any more at all. I'm new to Gentoo - just put it on the laptop to see what all the buzz was about (coming from Slackware) a few days ago. It was my understanding that if you edited make.conf and then ran env-update, the new values set in make.conf would be used. Was I totally off?

Code:
gentoo etc # echo "THIS='A TEST'" >> /etc/make.conf && env-update && emerge info
>>> Regenerating /etc/ld.so.cache...
Portage 2.0.46-r9 (default-x86-1.4, gcc-3.2.1, glibc-2.3.1-r3)
=================================================================
System uname: 2.4.20-gentoo-r1 i686 Mobile Intel(R) Pentium(R) 4 - M CPU 1.70GHz
GENTOO_MIRRORS="http://www.ibiblio.org/pub/Linux/distributions/gentoo"
CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 apm arts cups gif libg++ libwww mikmod mmx motif ncurses qtmt spell svga xv gdbm berkdb slang readline guile X tcpd pam ssl perl python esd imlib oggvorbis gtk opengl -gnome -kde qt -postgres jpeg png truetype xml xml2 avi aalib mpeg encode fbcon sse -3dnow bonobo -cdr -cjk crypt evo ggz -gpm -gps gtk2 gtkhtml java libgda mozilla -nls oss alsa pcmcia pda pdflib plotutils quicktime samba sdl tcltk xmms zlib"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -ffast-math -O3 -s -funroll-loops -pipe"
CXXFLAGS="-mcpu=pentium4 -march=i386 -O3 -pipe -s"
ACCEPT_KEYWORDS="x86 ~x86"
MAKEOPTS="-j3"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache buildpkg"


If I totally misunderstood how this whole thing works... I apologize. If you can, point me in the right direction or to some good docs....

Rob
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Mon Jan 20, 2003 7:31 pm    Post subject: Reply with quote

Strange :? All I can say is, it works for me.

Please go back one step, and test whether your basic distcc-setup works, by testing it during a kernel build(which is make.conf-independent).
That will at least help us to pinpoint the problem.

Code:
# make menuconfig
# make dep && make clean
# export DISTCC_HOSTS="....."
# make CC="distcc" -j3 bzImage
# make CC="distcc" -j3 modules
# make modules_install
# [copy your kernel, etc. etc.]

If this works, you know for sure distcc works. (and that's something)

Also, you can try and run the distcc-daemon (that does not work when run as root (!)) as a normal user on all machines, and tail the output for possible clues:
distccd --verbose --daemon –log-file=/home/<yourname>/distccd.log
tail -f /home/<yourname>/distccd.log
Back to top
View user's profile Send private message
AthlonRob
n00b
n00b


Joined: 19 Jan 2003
Posts: 37

PostPosted: Mon Jan 20, 2003 7:52 pm    Post subject: Reply with quote

I'm sorry, I meant to say (hell, I said everything else...) that distcc *was* working, by itself.

I kludged it and got it working a few minutes ago, now.

Don't ask me why, 'cause I franky don't know... lol :-)

I set my MAKEOPTS line to:
Code:
MAKEOPTS="-j3 CC='dgcc' CXX='dg++'"
and added
Code:
 export DISTCC_HOSTS="duron localhost"
to /etc/profile, under where Root's path is defined (so it is set for root alone).

MAKEOPTS is read when I actually emerge something, although make.conf is still being utterly ignored by emerge info. CC and CXX are still being ignored when I actually emerge something, though, but they get through when I put them on the MAKEOPTS line... this also fixes the problem I was having with 'no rule to make g++' when I had CXX='distcc g++' on the MAKEOPTS line.

Whatever, it is working now, for the most part... now I wonder if it is working for java.... I might need to munge the path settings a bit and adjust my dgcc and dg++ scripts to call the full path to gcc and g++, making symlinks so they can be called gcc and g++.... so java won't have any freakin' choice but to use g++. <g>

Thanks for the help and pointers and links! :-)

Rob
Back to top
View user's profile Send private message
AthlonRob
n00b
n00b


Joined: 19 Jan 2003
Posts: 37

PostPosted: Mon Jan 20, 2003 10:52 pm    Post subject: Reply with quote

AthlonRob wrote:

Whatever, it is working now, for the most part... now I wonder if it is working for java.... I might need to munge the path settings a bit and adjust my dgcc and dg++ scripts to call the full path to gcc and g++, making symlinks so they can be called gcc and g++.... so java won't have any freakin' choice but to use g++. <g>


FWIW, this idea didn't work to compile Java.

No ccache and no distcc.

*sigh*

I wonder if it'll work for OpenOffice?

Rob
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Tue Jan 21, 2003 12:16 pm    Post subject: Reply with quote

Great you finally got it working :)

I thought it would not work for java. I'm not sure if one can do things like distcc to a java-compiler. On the other hand: why not ? (but how?)

I could not get distcc to work properly with OpenOffice.
Back to top
View user's profile Send private message
AthlonRob
n00b
n00b


Joined: 19 Jan 2003
Posts: 37

PostPosted: Thu Jan 23, 2003 1:08 am    Post subject: Reply with quote

I think OpenOffice uses the java compiler too, doesn't it?

If we could just force it to use distcc instead of g++, it should be fine... I've only run in to one thing that bails out with distcc and that may be because one of my distccd servers is on GCC 3.2.0 vs 3.2.1....

I just joined the distcc mailing list... perhaps I'll ask them about working with the java compiler, too.

Rob
Back to top
View user's profile Send private message
contigab
n00b
n00b


Joined: 18 Dec 2002
Posts: 57
Location: Italy

PostPosted: Mon Jan 27, 2003 12:22 pm    Post subject: Reply with quote

i have made it to work in the following way:

edit file /etc/env.d/05gcc and change/add the lines
CC="distcc gcc"
CXX="distcc g++"
DISTCC_HOSTS="host1 host2 ... "

and then env-update

you may want to edit make.conf to set
MAKEOPTS="-j4" (i have 2 cpu's)

In this way the CC and GCC values are assumed to be the standard one for the distribution and they will never be overwritten.

As a drawback you have that you will ALWAYS use distcc now, in order to compile locally you have to switch back to your old 05gcc file.

By the way, profile.env (file which holds config values) is built from the files included in env.d so changing it directly is useless, it will be automatically overwritten.
_________________
Linux! :)
Back to top
View user's profile Send private message
stig
Apprentice
Apprentice


Joined: 03 Sep 2002
Posts: 289
Location: Bærum, Norway

PostPosted: Wed Feb 05, 2003 3:04 pm    Post subject: Reply with quote

I find this thread most useful, thogh I still experience som problems making distcc work properly.

Here is a little output (relevant parts):
Code:

checking for i686-pc-linux-gnu-gcc... distcc gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix...
checking for object suffix... configure: error: cannot compute OBJEXT: cannot compile

!!! ERROR: sys-libs/ncurses-5.3-r1 failed.
!!! Function econf, Line 11, Exitcode 1
!!! econf failed

The server echoes this:
Code:

Feb  5 15:43:20 [distccd] (dcc_execvp) ERROR: failed to exec gcc: No such file or directory



The machine I want to help to an easy life:
Code:

Reading specs from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/specs
Configured with: /var/tmp/portage/gcc-3.2.1/work/gcc-3.2.1/configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu --with-system-zlib --enable-languages=c,c++,ada,f77,objc,java --enable-threads=posix --enable-long-long --disable-checking --enable-cstdio=stdio --enable-clocale=generic --enable-__cxa_atexit --enable-version-specific-runtime-libs --with-gxx-include-dir=/usr/include/g++-v32 --with-local-prefix=/usr/local --enable-shared --enable-nls --without-included-gettext
Thread model: posix
gcc version 3.2.1


/etc/env.d/05gcc:
Code:

LDPATH="/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1"
CC="distcc gcc"
CXX="distcc g++"
DISTCC_HOSTS="host1 localhost"


/etc/make.conf:
Code:

DISTCC_HOSTS="host1 localhost"
DISTCC_VERBOSE=1
MAKEOPTS="-j4"




The machine which acts as server:
Code:

Reading specs from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/specs
Configured with: /var/tmp/portage/gcc-3.2.1-r6/work/gcc-3.2.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.2 --includedir=/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/3.2 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/3.2/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/3.2/info --enable-shared --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu --with-system-zlib --enable-languages=c,c++,ada,f77,objc,java --enable-threads=posix --enable-long-long --disable-checking --enable-cstdio=stdio --enable-clocale=generic --enable-__cxa_atexit --enable-version-specific-runtime-libs --with-gxx-include-dir=/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/include/g++-v3 --with-local-prefix=/usr/local --enable-shared --disable-nls
Thread model: posix
gcc version 3.2.1 20021207 (Gentoo Linux 3.2.1-20021207)


/etc/env.d/05gcc:
Code:

PATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2"
ROOTPATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2"
MANPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/man"
INFOPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/info"
CC="gcc"               
CXX="g++"       
LDPATH="/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1"


/etc/make.conf:
Code:

MAKEOPTS="-j2"

_________________
Allting har en ende, pølsen den har to.
Back to top
View user's profile Send private message
TwoSlick
Tux's lil' helper
Tux's lil' helper


Joined: 22 Apr 2002
Posts: 114
Location: Rolla, MO

PostPosted: Thu Feb 06, 2003 6:38 am    Post subject: Reply with quote

It appears that portage has just been updated to use distcc as well as ccache features. I just tried it out, and it works GREAT, and EASILY.... :D

Here's how to do it in a few simple steps.

1. If you modified your /etc/env.d/05gcc, change it back to it's original form, or your programs won't compile. Change the lines back to:
Code:
CC="gcc"
CXX="g++"

Then do your env-update.

2. The only line you should have added to your make.conf file should be:
Code:
DISTCC_HOSTS="computer1 computer2 etc..."


3. Modify your MAKEOPTS line. Mine looks like this:
Code:
MAKEOPTS="-j5"


4. Then the FEATURES line should read something like this:
Code:
FEATURES="ccache distcc" (along with any other options you want)


That should basically be everything you need to do. (except to emerge ccache and set up distcc on your computers of course) These modifications only change how portages compiles work, not manual compiles.

- Tim
Back to top
View user's profile Send private message
stig
Apprentice
Apprentice


Joined: 03 Sep 2002
Posts: 289
Location: Bærum, Norway

PostPosted: Thu Feb 06, 2003 9:47 am    Post subject: Reply with quote

This almost sounded like magic :)
I was woundering which version of protage you're talking about?
After emerging ccache, it says that:
Quote:

Portage 2.0.6+ will automaticlly take advantage of ccache with no additional steps[...]

As far as I can tell, I use portage v. 2.0.46-r9 wich seemes to be the latest.

I recon the
Code:

DISTCC_VERBOSE=1

Still works in make.conf?
Anyway...It doesen't do anything here. No jobs are being distributed, and no connections to the server is made. More tips?
_________________
Allting har en ende, pølsen den har to.
Back to top
View user's profile Send private message
georgz
Tux's lil' helper
Tux's lil' helper


Joined: 06 Dec 2002
Posts: 137
Location: Munich, Germany

PostPosted: Thu Feb 06, 2003 11:19 am    Post subject: distcc doesn't work anymore Reply with quote

I'm abit stuck, my distcc doesn't work anymore.

Code:

/etc/env.d/05gcc
CC="distgcc"
CXX="distg++"

d-emuc07-132-39 root # cat /usr/bin/distgcc
#!/bin/sh
distcc $@
d-emuc07-132-39 root # cat /usr/bin/distg++
#!/bin/sh
distcc g++ $@

/etc/make.conf
DISTCC_HOSTS="kennzo localhost"
DISTCC_VERBOSE=1   
   


But it doesn't work anymore, see

Code:

d-emuc07-132-39 root # emerge sash
Calculating dependencies ...done!
>>> emerge (1 of 1) app-shells/sash-3.4-r5 to /
>>> md5 ;-) sash-3.4.tar.gz
>>> md5 ;-) sash-3.x-readline.diff.gz
>>> Unpacking source...
>>> Unpacking sash-3.4.tar.gz
patching file Makefile
patching file cmds.c
patching file sash.c
Hunk #1 succeeded at 372 (offset 6 lines).
Hunk #3 succeeded at 729 (offset 6 lines).
Hunk #5 succeeded at 775 (offset 6 lines).
>>> Source unpacked.
distgcc -pipe -march=pentium3 -O3 -pipe -DHAVE_GZIP -DHAVE_EXT2 -DHAVE_READLINE   -c -o sash.o sash.c
distccd[505] (dcc_execvp) ERROR: failed to exec cc: No such file or directory
make: *** [sash.o] Error 110

!!! ERROR: app-shells/sash-3.4-r5 failed.
!!! Function src_compile, Line 39, Exitcode 2
!!! (no error message)

It doesn't work for all ebuilds...

Can anybody give me a tip what could be wrong?
Back to top
View user's profile Send private message
stig
Apprentice
Apprentice


Joined: 03 Sep 2002
Posts: 289
Location: Bærum, Norway

PostPosted: Thu Feb 06, 2003 12:06 pm    Post subject: Reply with quote

I have almost the same problem - when the client connects to the server, gcc (or in your case cc) is nowhere to be found.
Here is mine:

Code:

Feb  6 13:00:57 [distccd] (dcc_execvp) ERROR: failed to exec gcc: No such file or directory

_________________
Allting har en ende, pølsen den har to.
Back to top
View user's profile Send private message
georgz
Tux's lil' helper
Tux's lil' helper


Joined: 06 Dec 2002
Posts: 137
Location: Munich, Germany

PostPosted: Thu Feb 06, 2003 1:16 pm    Post subject: Reply with quote

Works again!

On the second machine I had started distccd with /etc/init.d/distccd start.
Then it runs as user nobody.

When I start distccd as oridinary user it works fine:
/usr/bin/distccd --verbose --log-file=/tmp/distccd.log --daemon

Now the question to find out is why doesn't it work as nobody?
Back to top
View user's profile Send private message
ccpetersen
n00b
n00b


Joined: 11 Jun 2002
Posts: 25

PostPosted: Thu Feb 06, 2003 2:45 pm    Post subject: Reply with quote

Quote:
Now the question to find out is why doesn't it work as nobody?

Because when distccd is started as nobody the PATH does not include the gcc directory. You must have
Code:
PATH=`gcc-config --get-bin-path`

in the file /etc/init.d/distccd so that distccd can find gcc.

Which leads to another bit of bad advice in this this thread. You shouldn't alter /etc/init.d/05gcc. That file gets overwritten every time gcc-config is run by you or another program. Go into the /etc/init.d/gcc directory and modify the file which corresponds with the version of gcc you want to run(in most cases there is only one entry). Then run:
Code:
gcc-config --use-old
env-update
source /etc/profile

Another point of confusion is that the file /etc/make.conf has nothing to do with the program make. /etc/emerge.conf might have been a better choice. What this means is that if you want distcc to work with compiles that use make it's best to specify the options on the make command line or with a simple wrapper script. Like this:
Code:
make DISTCC_HOSTS="localhost bigmachine" -j4 bzImage
Back to top
View user's profile Send private message
TwoSlick
Tux's lil' helper
Tux's lil' helper


Joined: 22 Apr 2002
Posts: 114
Location: Rolla, MO

PostPosted: Thu Feb 06, 2003 2:58 pm    Post subject: Reply with quote

Quote:
I was woundering which version of protage you're talking about?


Actually last night after rsyncing and checking for updates portage got updated to: 2.0.46-r11

When I did my etc-update, I noticed that it wanted to change my FEATURES line in make.conf to include distcc. I update pretty regularly, so I think it just got updated yesterday.

- TwoSlick
Back to top
View user's profile Send private message
georgz
Tux's lil' helper
Tux's lil' helper


Joined: 06 Dec 2002
Posts: 137
Location: Munich, Germany

PostPosted: Thu Feb 06, 2003 3:03 pm    Post subject: Reply with quote

ccpetersen: The thing is that this is in the startup file:
[
Code:
code]
kennzo root # cat /etc/init.d/distccd
#!/sbin/runscript

depend() {
        need net
}

start() {
        rm -rf /var/tmp/distccd.pid
        ebegin "Starting distccd"
        PATH=`gcc-config --get-bin-path` /sbin/start-stop-daemon --start --quiet --startas /usr/bin/distccd \
                -c nobody --pidfile /var/tmp/distccd.pid \
                -- --pid-file /var/tmp/distccd.pid
        eend $? "Failed to Start distccd"
[/code]
Back to top
View user's profile Send private message
ccpetersen
n00b
n00b


Joined: 11 Jun 2002
Posts: 25

PostPosted: Thu Feb 06, 2003 3:13 pm    Post subject: Reply with quote

What's the output of `which gcc`?
and `gcc-config --get-bin-path`.
Back to top
View user's profile Send private message
georgz
Tux's lil' helper
Tux's lil' helper


Joined: 06 Dec 2002
Posts: 137
Location: Munich, Germany

PostPosted: Thu Feb 06, 2003 3:22 pm    Post subject: Reply with quote

Code:

d-emuc07-132-39 root # which gcc
/usr/bin/gcc

d-emuc07-132-39 root # gcc-config --get-bin-path
/usr/i686-pc-linux-gnu/gcc-bin/3.2

d-emuc07-132-39 root # gcc --version
gcc (GCC) 3.2.1 20021207 (Gentoo Linux 3.2.1-20021207)
Back to top
View user's profile Send private message
ccpetersen
n00b
n00b


Joined: 11 Jun 2002
Posts: 25

PostPosted: Thu Feb 06, 2003 4:58 pm    Post subject: Reply with quote

I can't see anything that's obviously wrong. I take it your running distcc 1.1 (~x86) not distcc 0.15. If you are running distcc 0.15 then /usr/bin/gcc shouldn't be there.

Other than that the setup you describe works here.
Back to top
View user's profile Send private message
charlesnadeau
Apprentice
Apprentice


Joined: 19 May 2003
Posts: 205
Location: Ottawa, Ontario, Canada

PostPosted: Sat May 31, 2003 1:05 pm    Post subject: Problem with distcc on two machines Reply with quote

AlterEgo wrote:
Strange :? All I can say is, it works for me.

Please go back one step, and test whether your basic distcc-setup works, by testing it during a kernel build(which is make.conf-independent).
That will at least help us to pinpoint the problem.

Code:
# make menuconfig
# make dep && make clean
# export DISTCC_HOSTS="....."
# make CC="distcc" -j3 bzImage
# make CC="distcc" -j3 modules
# make modules_install
# [copy your kernel, etc. etc.]

If this works, you know for sure distcc works. (and that's something)


I tried to test my install of distcc (version 2.0.1) using these instructions but to no avail. I looked at all the possibilities (I think). My configuration is quite simple: I have two machines:
Mosix4 at 192.168.0.53 and Mosix5 at 192.168.0.54.
I am compiling on Mosix5 and trying to get the "help" of Mosix4 on which distccd is running.
I know distccd is started on Mosix4 because:
Code:

Mosix4 charles # ps -aux | grep distccd | more
Warning: bad syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
charles  19417  0.0  0.5  1364  272 ?        S    15:09   0:00 distccd --verbose --daemon --log-file=/home/charles/distccd.log
root     31377  0.0  1.0  1408  488 pts/0    S    17:47   0:00 grep distccd

I also know that distccd is listening on the network:
Code:

Mosix4 charles # netstat -pat
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 *:3632                  *:*                     LISTEN      19417/distccd
tcp        0      0 *:723                   *:*                     LISTEN      -
tcp        0      0 *:ssh                   *:*                     LISTEN      3187/sshd
tcp        0      0 Mosix4.coara.or.jp:ssh  Mosix5.coara.or.j:33059 ESTABLISHED 19450/0

I know I can reach Mosix 4 from Mosix5 because I can ping it:
Code:

Mosix5 linux # ping -c 5 Mosix4
PING Mosix4 (192.168.0.53): 56 octets data
64 octets from 192.168.0.53: icmp_seq=0 ttl=64 time=1.1 ms
64 octets from 192.168.0.53: icmp_seq=1 ttl=64 time=0.7 ms
64 octets from 192.168.0.53: icmp_seq=2 ttl=64 time=0.7 ms
64 octets from 192.168.0.53: icmp_seq=3 ttl=64 time=0.8 ms
64 octets from 192.168.0.53: icmp_seq=4 ttl=64 time=0.7 ms

and because I am accessing Mosix4 from Mosix5 over ssh.
I started my kernel compilation by typing:
Code:

Mosix5 linux # export DISTCC_HOSTS="192.168.0.53"
Mosix5 linux # make CC="distcc" -j5 bzImage

When the compilation really starts, I see a lot of pairs of lines like these:
Code:

distcc[6731] (dcc_pump_sendfile) ERROR: sendfile failed: Connection reset by peer
distcc[6731] (dcc_build_somewhere) Warning: failed to distribute to "192.168.0.53", running locally instead

I am quite at lost as what can be happening there. I read a lot of postings in these forums, the documentation and this page http://cvs.gentoo.org/~zwelch/distcc.html. I spent the day testing possibilities, inspecting the content of /etc/make.conf and /etc/conf.d/distccd and nothing I do seems to make distccd operate its magic.
Is there anything I forgot, something I did that I shouldn't have done, something stupid I overlooked?
Thanks in advance for your help!

Charles
_________________
Charles Nadeau
http://radio.weblogs.com/0111823/
http://charlesnadeau.blogspot.com/search/label/Gentoo
Back to top
View user's profile Send private message
tuxwatcher
Tux's lil' helper
Tux's lil' helper


Joined: 05 Jun 2003
Posts: 121
Location: USA

PostPosted: Thu Jun 05, 2003 1:59 pm    Post subject: Problem with distcc on two machines Reply with quote

I was having the same reset by peer problem. I checked the syslog on the peer machine and it showed I was having permission problems in the /tmp directory. I went and deleted the existing distcc directories under /tmp on that peer, tried compiling again, and everything worked fine.
Back to top
View user's profile Send private message
charlesnadeau
Apprentice
Apprentice


Joined: 19 May 2003
Posts: 205
Location: Ottawa, Ontario, Canada

PostPosted: Thu Jun 05, 2003 2:50 pm    Post subject: Re: Problem with distcc on two machines Reply with quote

tuxwatcher wrote:
I was having the same reset by peer problem. I checked the syslog on the peer machine and it showed I was having permission problems in the /tmp directory. I went and deleted the existing distcc directories under /tmp on that peer, tried compiling again, and everything worked fine.

I did
Code:
emerge distcc

as root. Could it be the problem? I know you can't run distcc as root. Is there any link?
Which log file should I check? Where is it?

Thanks!
Charles
_________________
Charles Nadeau
http://radio.weblogs.com/0111823/
http://charlesnadeau.blogspot.com/search/label/Gentoo
Back to top
View user's profile Send private message
tuxwatcher
Tux's lil' helper
Tux's lil' helper


Joined: 05 Jun 2003
Posts: 121
Location: USA

PostPosted: Thu Jun 05, 2003 3:06 pm    Post subject: Re: Problem with distcc on two machines Reply with quote

The errors I had were showing up in the /var/log/messages log on the machine distcc was trying to connect too. Emerging distcc again did not help because it didn't clear the temporary files in /tmp.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum