Posted inInformation Technology / Raspberry Pi

How Far We’ve Come – Pt. 10

Admittedly we are at the “I hate broken things” stage of this project. The application itself will compile and run locally, but distcc used to work.

 

xpnsqt2 app on Pi image
xpnsqt2 app on Pi

As you can see, even the browse functionality works.

xpnsqt2 browse on pi image
xpnsqt2 browse on Pi

At first I thought this was simply due to moldy posts on the Internet. Lots of posts say things like “current version of Linux” instead of the actual version they are using. For the record:

roland@roland-desktop:~/piBuild/pitools/arm-bcm2708$ lsb_release -irc
Distributor ID: neon
Release: 16.04
Codename: xenial

roland@roland-desktop:~/piBuild/pitools/arm-bcm2708$ cat /etc/lsb-release
DISTRIB_ID=neon
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION=”KDE neon LTS User Edition 5.8″

pi@raspberrypi:~/build-xpnsqt2-Desktop-Debug $ lsb_release -irc
Distributor ID: Raspbian
Release: 8.0
Codename: jessie

I did notice that there was a specific directory for 4.9 so I made changes to use it.

cd ~/piBuild/pitools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin
unlink cpp
unlink c++
unlink g++
unlink gcc

cd ..
cd ..
cd arm-rpi-4.9.3-linux-gnueabihf/bin

ln -s arm-linux-gnueabihf-c++ c++
ln -s arm-linux-gnueabihf-cpp cpp
ln -s arm-linux-gnueabihf-g++ g++
ln -s arm-linux-gnueabihf-gcc-4.9.3 gcc

sudo nano /etc/init.d/distcc
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
PATH=/home/roland/piBuild/pitools/arm-bcm2708/arm-rpi-4.9.3-linux-gnueabihf/bin:"$PATH"

sudo systemctl daemon-reload

I even turned off verbose and turned on DISTCC_SAVE_TEMPS in the QtCreator environment so all of my err files would be saved. They all failed in the same way.

 

/usr/include/c++/4.9/new:129:41: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
/usr/include/c++/4.9/new:131:41: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
/usr/include/c++/4.9/new:137:41: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
/usr/include/c++/4.9/new:139:41: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
/usr/include/c++/4.9/new:146:57: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
/usr/include/c++/4.9/new:148:59: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]

 

A bit more Web searching shows this is a bug from 2006. It appears to have crept into the pitools chain. I will be adding more detail to this old bug, then moving on to the rewrite and finally the full cross compile.

<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?

Roland Hughes started his IT career in the early 1980s. He quickly became a consultant and president of Logikal Solutions, a software consulting firm specializing in OpenVMS application and C++/Qt touchscreen/embedded Linux development. Early in his career he became involved in what is now called cross platform development. Given the dearth of useful books on the subject he ventured into the world of professional author in 1995 writing the first of the "Zinc It!" book series for John Gordon Burke Publisher, Inc.

A decade later he released a massive (nearly 800 pages) tome "The Minimum You Need to Know to Be an OpenVMS Application Developer" which tried to encapsulate the essential skills gained over what was nearly a 20 year career at that point. From there "The Minimum You Need to Know" book series was born.

Three years later he wrote his first novel "Infinite Exposure" which got much notice from people involved in the banking and financial security worlds. Some of the attacks predicted in that book have since come to pass. While it was not originally intended to be a trilogy, it became the first book of "The Earth That Was" trilogy:
Infinite Exposure
Lesedi - The Greatest Lie Ever Told
John Smith - Last Known Survivor of the Microsoft Wars

When he is not consulting Roland Hughes posts about technology and sometimes politics on his blog. He also has regularly scheduled Sunday posts appearing on the Interesting Authors blog.