|
|
(23 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
| | | {{PageHeader|VAR-SOM-MX6 - QT5 Hello World}} {{DocImage|category1=VAR-SOM-MX6|category2=Yocto}} __toc__ |
| How to compile an application with QT
| | Please follow the QT creator guide: https://variwiki.com/index.php?title=File:YoctoQtCreator.pdf<br> |
| | | In addition:<br> |
| Edit
| | https://wiki.qt.io/Basic_Qt_Programming_Tutorial<br> |
| Delete post
| | https://wiki.qt.io <br> |
| Report this post
| | http://doc.qt.io/qtcreator/creator-tutorials.html<br> |
| Information
| | http://doc.qt.io/qt-5/qtexamplesandtutorials.html<br> |
| Quote
| |
| | |
| Postby Ron.D » Tue Jan 20, 2015 11:34 am
| |
| A simple cookbook to show how to compile an application with QT.
| |
| Will use one of the sample application as example.
| |
| | |
| 1. Build tools
| |
| $ cd ~/var-som-mx6-daisy-v6/
| |
| $ . ./setup-environment build_x11
| |
| edit local.conf and add to the bottom:
| |
| #
| |
| EXTRA_IMAGE_FEATURES = "debug-tweaks tools-debug eclipse-debug"
| |
| | |
| Fix a bug due to branch removal in QT git.
| |
| gedit ../sources/meta-qt5/recipes-qt/qt5/qtsystems_git.bb
| |
| Change:
| |
| #QT_MODULE_BRANCH = "5.3"
| |
| QT_MODULE_BRANCH = ""
| |
| | |
| $ bitbake meta-toolchain-qt5
| |
| | |
| 2. install tools
| |
| tmp/deploy/sdk/poky-eglibc-x86_64-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-1.6.1.sh
| |
| Keep the default install directory /opt/poky/1.6.1
| |
| | |
| 3. sample application
| |
| $ cd ~/var-som-mx6-daisy-v6/
| |
| $ mkdir qtapps
| |
| $ cd qtapps
| |
| $ cp -a ../build_var/tmp/work/x86_64-linux/qtbase-native/5.2.1-r0/qtbase-opensource-src-5.2.1/examples/opengl/hellowindow ./
| |
| $ cd hellowindow
| |
| | |
| $ export PATH=/opt/poky/1.6.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi:$PATH
| |
| $ export PATH=/opt/poky/1.6.1/sysroots/x86_64-pokysdk-linux/usr/bin/qt5:$PATH
| |
| | |
| Create new file qmake.conf:
| |
| #
| |
| CROSS_COMPILE = arm-poky-linux-gnueabi-
| |
| ROOTFS = /opt/poky/1.6.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
| |
| #
| |
| 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
| |
| #
| |
| | |
| | |
| $ qmake
| |
| edit the genreated Makefile and insert in the top
| |
| #
| |
| CROSS_COMPILE = arm-poky-linux-gnueabi
| |
| ROOTFS = /opt/poky/1.6.1/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
| |
| #
| |
| | |
| $ make clean
| |
| $ make
| |
| copy the hellowindow to your target and run it
| |
| export DISPLAY=:0.0
| |
| ./hellowindow --platform eglfs
| |