reMarkableWiki

Everything about the reMarkable Paper Tablet

User Tools

Site Tools


Sidebar

Topics

devel:qt_creator

Setting up QT Creator

QT Creator is a cross-platform IDE designed to build Qt applications. The Qt Creator IDE is currently the preferred choice to build and run custom qt applications on the reMarkable tablet.

Installation

Ubuntu

$ sudo apt install qtcreator

Arch Linux

# pacman -S qtcreator

Fedora

# yum install qt-creator

For other Linux distributions, please refer to the distribution specific package manager and package list. Optionally, or if your distribution does not provide a qt-creator package, you may follow the official Qt Creator Manual and build Qt Creator from source.

Toolchain

For applications to be able to run on the reMarkable, they must be compiled for the ARM architecture using the toolchain provided by reMarkable engineering.

Download the toolchain installer on your host machine

$ curl https://remarkable.engineering/deploy/sdk/poky-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-neon-toolchain-2.1.3.sh -o install-toolchain.sh

Execute the toolchain installer

$ chmod +x install-toolchain.sh
$ ./install-toolchain

You will be prompted to specify an installation path. It is highly recommended to use the default SDK path as it is used trough out this article.

Configuring QT Creator

The QT Creator IDE must first be configured to support cross-compiling for the reMarkable tablet. It is assumed that the toolchain has been installed to /opt/poky/2.1.3/

Open the options menu under Tools > Options > Build & Run and follow the latter steps

QT Version

Under the QT Versions tab, click on Add… and select the qmake binary located in /opt/poky/2.1.3/sysroots/x86_64-pokysdk-linux/usr/bin/qt5/qmake. Set the Version name to reMarkable 5.6.2 to follow up with this guide.

Compiler

Under the compilers tab, click Add > GCC. From there you'll have to add a C and C++ compiler.

Set the path of both compilers to /opt/poky/2.1.3/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc and name them reMarkable GCC each.

Debugger

Under the debuggers tab, click Add and set the path to /opt/poky/2.1.3/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gdb. Set the name to reMarkable GDB

QT Kit

Under the kits tab, click Add. From there ensure all properties are set as shown in the following table :

Property Value
File system name
Device Type Generic Linux Device
Device
Sysroot /opt/poky/2.1.3/sysroots/cortexa9hf-neon-poky-linux-gnueabi
Compiler (C) reMarkable GCC
Compiler (C++) reMarkable GCC
Environment No changes to apply.
Debugger reMarkable GDB
Qt version reMarkable 5.6.2
Qt mkspec linux-oe-g++

CMake related properties have been left out from the table as they should remain unmodified.

Adding your device

QT has to be able to establish connection to your device for it to directly install and execute code on it.

You must add an entry for your reMarkable tablet under Tools > Options > Devices. From there click Add > Generic Linux Device.

Set a name for the device, such as reMarkable, and under the Type Specific section specify the necessary SSH credentials to access your device.

After Configuration

After all steps above have been completed, close the current session of Qt Creator and source the toolchain environment.

From the very same terminal you may then open Qt Creator

$ source /opt/poky/2.1.3/environment-setup-cortexa9hf-neon-poky-linux-gnueabi
$ qtcreator

On every new shell session, the toolchain environment must be sourced before Qt Creator has been opened.*

At this point, Qt Creator should be able to build and execute code on your reMarkable tablet as long as its unlocked and connected (via SSH) to the host machine.

Tip:

The device's graphical interface, xochitl, may undesirably interfere and overlap with the executed Qt Application. To stop this behavior from reoccurring, stop the xochitl service on your reMarkable trough systemctl

remarkable: ~/ systemctl stop xochitl

To start the GUI again, either restart the device or start xochitl from systemctl

remarkable: ~/ systemctl start xochitl
devel/qt_creator.txt · Last modified: 2018/04/07 14:05 by ctxz