Information Technology, Raspberry Pi

How Far We’ve Come – Pt. 8

This is where we begin to merge our discussion of distcc and the Raspberry Pi. The first thing I needed to do was actually get distcc installed on the Pi.

distcc install on Pi image
distcc install on Pi

Don’t forget the monitor so you can tell if things are working. I also created a ~/.distcc/hosts file.

localhost
roland-desktop
roland-HP-Compaq-8100-Elite-SFF-PC

After adding the previously mentioned make options to the project my out of the box attempt went like this:

First Attempt image
First Attempt

Notice the red bars? This means we had no access. I edited /etc/hosts to look as follows:

127.0.0.1	localhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters
127.0.1.1       raspberrypi
192.168.1.132   roland-desktop
192.168.1.105   roland-HP-Compaq-8100-Elite-SFF-PC

Once the Pi had known hosts our build did just a smidgen better. Still not good, but better.

distcc after /etc/host change image
distcc after /etc/hosts change

Now we get that bluish color and some green. In the “compilation” window of QtCreator we now see things like this.

distcc[1234] ERROR: compile ../xpnsqt2/SplashDialog.cpp on roland-HP-Compaq-8100-Elite-SFF-PC failed
distcc[1234] (dcc_build_somewhere) Warning: remote compilation of '../xpnsqt2/SplashDialog.cpp' failed, retrying locally
distcc[1234] Warning: failed to distribute ../xpnsqt2/SplashDialog.cpp to roland-HP-Compaq-8100-Elite-SFF-PC, running locally instead
distcc[1233] ERROR: compile ../xpnsqt2/ReportBrowserDialog.cpp on roland-desktop failed
distcc[1233] (dcc_build_somewhere) Warning: remote compilation of '../xpnsqt2/

Everything worked flawlessly before because I had 2 different machines running the exact same version and bit distro. Compiling for the Raspberry Pi on a regular desktop requires a toolkit.

Next time I will install the toolkit on the 6-core AMD and get it working with the Raspberry Pi. Admittedly, most of you aren’t going to develop on your Pi, but, I want to see if it is possible to have the distcc server configured to support both the Pi and regular desktop builds without a bazillion tons of hacking. My suspicion is that distcc isn’t robust enough to know which tool chain to use. Once that server works for the Pi it won’t work for the desktop.

If somehow I magically get distcc to support both, then I really have to try adding the Android kit!

<Previous-part Next-part>

Related Posts:

QT Database book

AGILE book

Where Did My QDebug Output Go?

MOC Parse Error at “std”

KDE Neon – Distcc and Qt

CopperSpice Experiments

QtCreator – No qmlScene installed

So You Can’t Get Your Models to Work with QML?