[distcc] compiling with distcc on x86_64 from within a 32-bit chroot?

Audio Phile da_audiophile at yahoo.com
Sat Jun 25 10:16:59 MDT 2011


Thanks for the reply, Martin.  Here what I'm doing now that seems to be working, but it is rather complicated:

*I have 32-bit chroots on two x86_64 machines (paths mounted, just not chrooted into them).
*The distccd daemon is running on both x86_64 machines from the normal x86_64 root, and I need to stop it to make this work.
*I stop distccd on both machines (from normal x86_64 root)
*I start distccd inside the 32-bit chroot on both machines:
$ sudo chroot /bin/bash /opt/arch32
 (once inside I start the daemon then exit the chroot)

Finally, outside of the chroots, I am able to use the schroot command to start the 32-bit builds and it works with distccd!

$ schroot -p -- makepkg -src

(makepkg is a wrapper script for make on Arch Linux.)

Main question: is there an easier way, one that wouldn't involve the daemon stopping on the main environment (x86_64) and starting it up inside the chroots (i686) of both machines?

When I try it without those steps that I have outlined above, it does not work.

*I have 32-bit chroots on two x86_64 machines (paths mounted, just not chrooted into them).
*The distccd daemon is running on both x86_64 machines from the normal x86_64 root.

Note that if I run the makepkg wrapper script at this point, I will successfully compile in the x86_64 using distcc.

*Outside of the chroots, I run the build script from the schroot command:

$ schroot -p -- makepkg -src

It build fails in many errors when the script hits a make step.  In this case it is "make prepare" as I attempt to build a kernel.  All 252 lines of the resulting errors are on pastebin to keep this post as crisp as I can :)

http://pastebin.com/bRVxXYEu

Advice is appreciated!

--- On Sat, 6/25/11, Martin Pool <mbp at sourcefrog.net> wrote:

> From: Martin Pool <mbp at sourcefrog.net>
> Subject: Re: [distcc] compiling with distcc on x86_64 from within a 32-bit chroot?
> To: "Audio Phile" <da_audiophile at yahoo.com>
> Cc: distcc at lists.samba.org
> Date: Saturday, June 25, 2011, 8:31 AM
> On 25 June 2011 05:22, Audio Phile
> <da_audiophile at yahoo.com>
> wrote:
> > Is this possible?  I have two x86_64 boxes both of
> which have 32-bit chroots for compiling.  I'm trying to get
> distcc to work INSIDE the chroots such that they can share
> processors.  I'm failing :)
> >
> > Basically, work doesn't get distributed outside of the
> chroot.  Has anyone done this and what was the trick?
> 
> That should work fine.  You need to make sure it's the
> compiler inside
> the chroot that actually runs, for which there are at least
> two
> possibilites:
> 
> 1- run distccd inside the chroot
> 2- if you need/want to run it outside, make sure that its
> path finds a
> shell script that runs 'exec schroot -c natty_32 gcc "$@"'
> (adjust to
> fit) to enter the chroot
> 
> m
> 


More information about the distcc mailing list