From Qt Wiki
Jump to: navigation, search
This article is nominated for deletion. Reason: Project is dead. Used Qt 4
Please raise your support/opposition to this nomination in the article's discussion page.




General information about the hardware can be found "here":

The mainstream Linux images are Ubuntu 12.04. There is a vast amount of documentation, some of it indicates that you have to manually splice a hwpack (binary blobs) with a vanilla release, but you appear to be fine if you simply grab the Linaro 12.04 image from here

Everything is there including a binary blob repo which should keep your blobs in good shape. There is a metapackage you need to track called:



Since Ubuntu already package a arm-linux-gnueabihf toolchain, I simply grabbed theirs. There might be a better mechanism. One absolutely filthy thing I found myself doing (Since I primarily use Arch Linux) is:

(/opt/os/precise is an Ubuntu Precise chroot)

1) Required to get the tools running

Exporting a library containing 64bit, ARM centric binaries:

export LD_LIBRARY_PATH=/opt/os/precise/usr/x86_64-linux-gnu/arm-linux-gnueabihf/lib

2) Required to get the toolchain finding its bits

Symlinking Ubuntu's arm-linux-gnueabihf folder into my personal system

ln -s /opt/os/precise/usr/arm-linux-gnueabihf /usr/arm-linux-gnueabihf

Lighthouse backends

The EGL implementation shipped as part of the aforementioned Ubuntu image is tied to X11. For this reason, the xcb backend is the logical choice (although we would like to get Qt running directly on the framebuffer on this device) and is what we have tested on the device.


On target

As per usual with Debian based hosts, adjust your apt repositories to include the appropriate source repos and:

apt-get build-dep qt4-x11

On host

./configure -device linux-snowball-g++ -device-option CROSS_COMPILE=/opt/os/precise/usr/bin/arm-linux-gnueabihf- -sysroot /stores/st/rootfs -opengl es2


The Snowball has a mini USB port so you require an appropriate adapter to interface this with standard USB hardware. Outside of this, your primary means of interacting with the device is via minicom/screen, again driven through this micro-USB port.


Spurious errors about an inability to find a DRI module and hence falling back to software rendering: