User Tools

Site Tools


subsystem:native-app-fw

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
subsystem:native-app-fw [2015/08/14 08:22]
gmauthe [meta-qt5]
subsystem:native-app-fw [2015/08/14 08:24]
gmauthe [meta-qt5]
Line 16: Line 16:
   - revision: adeca0db212d61a933d7952ad44ea1064cfca747   - revision: adeca0db212d61a933d7952ad44ea1064cfca747
   - add the qt5 components with own packagegroups under /​meta-agl/​meta-agl/​recipes-ivi   - add the qt5 components with own packagegroups under /​meta-agl/​meta-agl/​recipes-ivi
- 
-=== readme === 
- 
------------------------------------------------------------------------------------------------------------ 
-1. for the first try of integration of qt5 into agl-image-ivi we take: 
- 
-//get git url for agl from here and see the README.md how to use: 
-https://​git.automotivelinux.org/​gerrit/​gitweb?​p=AGL/​meta-agl.git;​a=blob;​f=README.md;​h=a92dfe8de4e6614a8d4dbbaaddbccaa06f1e4c75;​hb=4e6823fb7a9763715fb554cfb0df2dc318d741a7 
- 
-URI: git://​git.yoctoproject.org/​poky 
-> branch: ​  dizzy 
-> revision: 5f0d25152bac2d3798663a4ebfdd2df24060f153 
- 
-URI: git://​git.openembedded.org/​meta-openembedded 
-> layer: ​   meta-oe 
-> branch: ​  dizzy 
-> revision: 853dcfa0d618dc26bd27b3a1b49494b98d6eee97 
- 
-## The Renesas R-Car Gen2 (Porter) board depends in addition on: ## 
-URI: https://​gerrit.automotivelinux.org/​gerrit/​AGL/​meta-renesas 
-> branch: ​  ​agl-1.0-bsp-1.8.0 
-> revision: 0a69b07cfca17d1435f2bc7bf779139c5fac09a3 
- 
-URI: https://​github.com/​meta-qt5/​meta-qt5.git 
-> branch: ​  ​dizzy  ​ 
-> revision: adeca0db212d61a933d7952ad44ea1064cfca747 
- 
----------------------------------------------------------------------------------------------------- 
-2. modify the bblayers.conf and the local.conf in your build/conf directory to set the build config ​ 
- 
-2.1 in bblayers.conf,​ add the additional layers for qt: 
- 
-these are: 
--meta-openembedded/​meta-ruby 
--meta-qt5 
- 
-so your bblayers.conf might look like -> 
- 
-# LAYER_CONF_VERSION is increased each time build/​conf/​bblayers.conf 
-# changes incompatibly 
-LCONF_VERSION = "​6"​ 
- 
-BBPATH = "​${TOPDIR}"​ 
-BBFILES ?= ""​ 
- 
-BBLAYERS ?= " \ 
-  /​your/​path/​to/​project/​poky/​meta \ 
-  /​your/​path/​to/​project/​poky/​meta-yocto \ 
-  /​your/​path/​to/​project/​poky/​meta-yocto-bsp \ 
-  /​your/​path/​to/​project/​poky/​../​meta-openembedded/​meta-oe \ 
-  /​your/​path/​to/​project/​poky/​../​meta-openembedded/​meta-ruby \ 
-  /​your/​path/​to/​project/​poky/​../​meta-qt5 \ 
-  /​your/​path/​to/​project/​poky/​../​meta-agl/​meta-agl \ 
-  /​your/​path/​to/​project/​poky/​../​meta-agl/​meta-agl-bsp \ 
-  /​your/​path/​to/​project/​poky/​../​meta-renesas \ 
-  /​your/​path/​to/​project/​poky/​../​meta-renesas/​meta-rcar-gen2 \ 
-  " 
-BBLAYERS_NON_REMOVABLE ?= " \ 
-  /​your/​path/​to/​project/​poky/​meta \ 
-  /​your/​path/​to/​project/​poky/​meta-yocto \ 
-  /​your/​path/​to/​project/​meta-agl/​meta-agl \ 
-  " 
- 
- 
-2.2 local.conf, set the machine to "​porter":​ 
- 
-#MACHINE ?= "​beaglebone"​ 
-#MACHINE ?= "​genericx86"​ 
-#MACHINE ?= "​genericx86-64"​ 
-#MACHINE ?= "​mpc8315e-rdb"​ 
-#MACHINE ?= "​edgerouter"​ 
-MACHINE ?= "​porter"​ 
- 
- 
- 
-2.3 for the integration of qt and qt examples i have added two packagegroups 
-  //add new packagegroups for qt5 integration 
-  -...../​meta-agl/​meta-agl/​recipes-ivi/​packagegroups/​packagegroup-agl-ivi-qt5.bb 
-      -which contains the qt5 packages to be used for agl 
-  ....../​meta-agl/​meta-agl/​recipes-ivi/​packagegroups/​packagegroup-agl-ivi-qt5-examples.bb 
-      -which contains the qt5 examples packages to be used for agl 
-  //to make qt and qt examples part of your image, add the two new packagegroup files to  
-  -...../​meta-agl/​meta-agl/​recipes-ivi/​packagegroups/​packagegroup-agl-ivi.bb 
-      -which includes all the ivi packagegroup files 
- 
- 
- 
--------------------------------------------------------------------------------------------------------------------------- 
-3. to run a successful build you also might have to fix the following build problems 
- 
-3.1 with the version i have used for qt integration i had the following build problem 
- 
-///fix the build problem of gstreamer bbappend version in meta renesas 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​common/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-base_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​meta-rcar-gen2/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-base_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​common/​recipes-multimedia/​gstreamer/​gstreamer1.0-libav_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​meta-rcar-gen2/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-ugly_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​meta-rcar-gen2/​recipes-multimedia/​gstreamer/​gstreamer1.0-omx_1.0.0.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​common/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-good_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​meta-rcar-gen2/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-good_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​common/​recipes-multimedia/​gstreamer/​gstreamer1.0_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​common/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-bad_1.2.3.bbappend 
-  /​path/​to/​project/​AGL-GENIVI-7.0/​poky/​../​meta-renesas/​meta-rcar-gen2/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-bad_1.2.3.bbappend 
- 
-  I solved the problem of using the component version XXX_1.2.3.bbappend by changing it to wildcard format XXX_%.bbappend. ​ The problem originally occured by using the new poky version. For the future we have to see if this fix is applicable 
- 
- 
- 
-3.2 modified file for gstreamer1.0-plugins-base problem 
- 
-  in file:  ...../​meta-renesas/​meta-rcar-gen2/​recipes-multimedia/​gstreamer/​gstreamer1.0-plugins-base_%.bbappend 
- 
-  change do_configure 
- 
-  from: 
-  do_configure() { 
-    ./​autogen.sh --noconfigure 
-    oe_runconf 
-  } 
- 
-  to: 
-  do_configure() { 
-    (cd ${S} && ./​autogen.sh --noconfigure) 
-    oe_runconf 
-  } 
- 
- 
- 
-3.3 add some config options in qtbase.inc 
- 
-// add icu in qtbase.inc, because its necessary to have qtwebkit 
- 
-... 
-PACKAGECONFIG_ICU ?= "​icu"​ 
-... 
-PACKAGECONFIG ?= " \ 
-... 
-    ${PACKAGECONFIG_ICU} \ 
-" 
- 
- 
-// add examples in qtbase.inc, because its necessary to have qt examples in rootfs 
- 
-... 
-PACKAGECONFIG_EXAMPLES ?= "​examples"​ 
-... 
-PACKAGECONFIG ?= " \ 
-... 
-    ${PACKAGECONFIG_EXAMPLES} \ 
-" 
- 
- 
--------------------------------------------------------------------------------------------------------------- 
-4. to build the agl-image-ivi use the following command 
-bitbake agl-image-ivi 
- 
- 
--------------------------------------------------------------------------------------------------------------- 
-5. run qt examples 
- 
-to run a qt example you have to use a command like: 
- 
-./​analogclock -platform wayland-egl 
- 
-where you have also have to pass the platform to be used 
- 
-// check platforms available 
-ls /​usr/​lib/​qt5/​plugins/​platforms/​ 
- 
- 
---------------------------------------------------------------------------------------------------------------- 
-6. known issues 
- 
-6.1 with the first integration qtwebkit example applications do crash with seg fault. this seems to be a problem in qtwebkit!! to be investigated later!! 
- 
- 
- 
- 
- 
-