Offer an easy-to-use environment to cross-compile Qt application on a Raspberry Pi. This repo contains all the scripts needed to prepare a sysroot, cross-compile Qt and deploy Qt libraries to your Raspberry.
For more information, go to the wiki
init-qtrpi-minimal | init-qtrpi-full | |
---|---|---|
Raspbian image | from raspberrypi.org | |
Toochain | from the github project | from the github project |
Sysroot | from qtrpi team | generated from raspbian image |
Qt binaries | from qtrpi team | compiled |
This tutorial will help you to:
In this example, you already have an SSH access to your Raspberry Pi 3 at 192.168.1.12
with the user pi
. The script will use sudo several times to install the packages on the board. You should add your SSH key in your Raspberry Pi. For example with ssh-copy-id
:
ssh-copy-id pi@192.168.1.12
First, install the dependencies:
sudo apt-get install curl g++ gdb-multiarch git realpath unzip zip
Open a terminal and follow the steps below:
git clone https://github.com/neuronalmotion/qtrpi.git
cd qtrpi
export QTRPI_QT_VERSION='5.7.0'
export QTRPI_TARGET_DEVICE='linux-rpi3-g++'
export QTRPI_TARGET_HOST='pi@192.168.1.12'
./init-qtrpi-minimal.sh
./deploy-qtrpi.sh --prepare-rpi
Note: You can also export the environment variables in your .bashrc.
cd myproject
/opt/qtrpi/bin/qmake-qtrpi
make
You can now copy and execute the generated binary file on your Raspberry Pi
Note: You can also add /opt/qtrpi/bin/ to your PATH
in your .bashrc and call qmake-qtrpi without the full path.
How to build a Raspberry Pi 3 application from your desktop Qt Creator (step by step video):
The images are tagged according to their target configuration.
Currently the following tags are available:
rpi3-qt5.6.2
: Crosscompile Qt 5.6.2 for the Raspbarry Pi 3Choose the image which fits your needs.
To build a Qt project, mount the directory containing the sources and the project file to the /sources
path inside the container and run it.By default the image automatically executes qmake
and make
in the current working directory, which is set to /sources
by default.
docker pull arose/qtrpi:rpi3-qt5.6.2
docker run -v /someqtprojectfolder/:/source arose/qtrpi:rpi3-qt5.6.2