VAR-SOM-MX6 QT Hello World: Difference between revisions

From Variscite Wiki
Line 26: Line 26:
$ mkdir qtapps
$ mkdir qtapps
$ cd qtapps
$ cd qtapps
$ cp -a ../build_x11/tmp/work/cortexa9hf-vfp-neon-mx6qdl-poky-linux-gnueabi/qtbase/5.4.2+gitAUTOINC+2cb17c1fb9-r0/build/examples/opengl/hellowindow ./
$ cp -a ../build_x11/tmp/work/cortexa9hf-vfp-neon-mx6qdl-poky-linux-gnueabi/qtbase/5.4.2+gitAUTOINC+2cb17c1fb9-r0/git/examples/opengl/hellowindow/ ./
$ cd hellowindow
$ cd hellowindow
$ source /opt/poky/1.8/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
$ source /opt/poky/1.8/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
</pre>
</pre>


Create new file qmake.conf:
Build the QT application:
<pre>
<pre>
#
$ qmake
CROSS_COMPILE=arm-poky-linux-gnueabi-
$ make clean
ROOTFS=/opt/poky/1.8/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
$ make
#
QMAKE_CC = $(CROSS_COMPILE)-gcc
QMAKE_CXX = $(CROSS_COMPILE)-g++
QMAKE_LINK = $(CROSS_COMPILE)-g++
QMAKE_LINK_SHLIB = $(CROSS_COMPILE)-g++
QMAKE_AR = $(CROSS_COMPILE)-ar cr
QMAKE_OBJCOPY = $(CROSS_COMPILE)-objcopy
QMAKE_STRIP = $(CROSS_COMPILE)-strip
#
QMAKE_LFLAGS_RELEASE = -Wl,-O1,-rpath $(ROOTFS)/usr/lib
#
QMAKE_INCDIR = $(ROOTFS)/usr/include
QMAKE_LIBDIR = $(ROOTFS)/usr/lib
QMAKE_INCDIR_X11 = $(ROOTFS)/usr/include
QMAKE_LIBDIR_X11 = $(ROOTFS)/usr/lib
QMAKE_INCDIR_OPENGL = $(ROOTFS)/usr/include
QMAKE_LIBDIR_OPENGL = $(ROOTFS)/usr/lib
#
</pre>
<pre>
$ qmake -makefile qmake.conf
</pre>
edit the genreated Makefile and insert in the top
<pre>
#
CROSS_COMPILE = arm-poky-linux-gnueabi
ROOTFS = /opt/poky/1.8/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
#
OE_QMAKE_CC = $(CROSS_COMPILE)-gcc
OE_QMAKE_CXX = $(CROSS_COMPILE)-g++
OE_QMAKE_LINK = $(CROSS_COMPILE)-g++
OE_QMAKE_LINK_SHLIB = $(CROSS_COMPILE)-g++
OE_QMAKE_AR = $(CROSS_COMPILE)-ar cr
OE_QMAKE_OBJCOPY = $(CROSS_COMPILE)-objcopy
OE_QMAKE_STRIP = $(CROSS_COMPILE)-strip
#
</pre>
</pre>
<pre>
<pre>
$ make clean
$ make
copy the hellowindow to your target and run it
copy the hellowindow to your target and run it
export DISPLAY=:0.0
export DISPLAY=:0.0
./hellowindow --platform eglfs
./hellowindow --platform xcb
</pre>
</pre>

Revision as of 15:58, 15 December 2015

VAR-SOM-MX6 - QT5 Hello World

Build and install tools

$ cd ~/var-som-mx6-yocto-fido/
$ . ./setup-environment build_x11

edit local.conf and add to the bottom:

#
EXTRA_IMAGE_FEATURES = "debug-tweaks tools-debug eclipse-debug"

Build:

$ bitbake meta-toolchain-qt5

Install:

$ tmp/deploy/sdk/poky-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-1.8.sh
Keep the default install directory /opt/poky/1.8

sample application

$ cd ~/var-som-mx6-yocto-fido/
$ mkdir qtapps
$ cd qtapps
$ cp -a ../build_x11/tmp/work/cortexa9hf-vfp-neon-mx6qdl-poky-linux-gnueabi/qtbase/5.4.2+gitAUTOINC+2cb17c1fb9-r0/git/examples/opengl/hellowindow/ ./
$ cd hellowindow
$ source /opt/poky/1.8/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi

Build the QT application:

$ qmake
$ make clean
$ make
copy the hellowindow to your target and run it
export DISPLAY=:0.0
./hellowindow --platform xcb