In this short tutorial we will explain how we can build from source code Qgroundcontrol in order to use in our Raspberry Pi.

You can download a copy compiled here

To continue this tutorial we will need the following:

    • Raspberry Pi Model B
    • SD Card
    • Qt Creator
    • Source Code QGroundControl
  • A long long long time for compiling

The first thing to do is install all dependencies via apt-get

sudo apt-get install phonon libqt4-dev
libphonon-dev libphonon4 phonon-backend-gstreamer
qtcreator libsdl1.2-dev libflite1 flite1-dev
build-essential libopenscenegraph-dev openscenegraph
Note: copy the whole block below at once and paste it into the command line, not by line.

The following dependencies must install them one by one.

sudo apt-get install qt4-dev-tools
sudo apt-get install gcc
sudo apt-get install xterm
sudo apt-get install git-core
sudo apt-get install subversion

No toolchain

Now we can compile for embedded fixture by, this is not the case, we are already on the Raspberry Pi.

Add a gcc toolchain

Go to Options > build & run > tab tool chain > button add

Choose GCC


Then set compiler path, debugger path and Mkspec.

    • Compiler path: /usr/bin/arm-linux-gnueabihf-gcc-4.6
    • Debugger path: /usr/bin/gdb
  • Mkspec: default


Qt Creator thinks that we will develop to a remote device

Go to menu help > about plugins

Uncheck device support > remote linux

Restart QT Creator

Go to tools > options TAB > build & run > QT versions > add “/usr/bin/qmake-qt4″

Download the Source

  • Download a ZIP Snap

Navigate to the QGC source code repository linked below, and click the ZIP link to download a snapshot of the code in a ZIP file.

QGroundControl Source Code

  • Clone the repository

This option assumes that you have Git already. To clone (checkout) the QGC repository, run the following command in the directory that you want the qgroundcontrol folder to be created:

cd qgroundcontrol
git submodule init
git submodule update



To compile the software, start the Qt Creator IDE and go to:

File → Open → Navigate to the folder where you placed the QGroundControl source → Open the file'‘. Then hit the green play button on the bottom left.

The code will take a few hours to compile. In my case, the compilation took approximately 6 hours to complete. Once compiled, run the program and connected to our ArduPilot can take up to 5 minutes to synchronize with QGroundControl. While it is true that our Raspberry Pi processor will reach its peak in processor usage, once it is fully synchronized with ArduPilot have some fluency in the program at the time of display readings.