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
Previous revision
subsystem:native-app-fw [2015/08/11 15:30]
gmauthe [Child Sub-Systems]
subsystem:native-app-fw [2022/07/26 20:56]
waltminer Obsolete - delete page
Line 8: Line 8:
  
  
-meta-qt5+==== meta-qt5 ​==== 
 +=== Integration === 
 +  - proposal for first try integration of meta-qt5 layer  
 +  - use a dizzy branch of meta-qt5 to correspond with poky and meta-oe dizzy branches from agl 
 +  - URI: https://​github.com/​meta-qt5/​meta-qt5.git 
 +  - branch: ​  ​dizzy 
 +  - revision: adeca0db212d61a933d7952ad44ea1064cfca747 
 +  - add the qt5 components with own packagegroups under /​meta-agl/​meta-agl/​recipes-ivi 
 + 
 +=== readme meta-qt5 integration === 
 + 
 + 
 +-------------------------------------------------------------------------------------------------------- 
 +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!! 
 + 
 + 
 + 
 + 
 + 
 + 
 ==== Maintainer(s) ==== ==== Maintainer(s) ====