1

Hardware: Riotboard, imx6solo;

BSP: fsl-community-bsp, jethro branch;

Meta-Qt5 layer: jethro branch;

image generated by "bitbake fsl-image-multimedia-full";

toolchain generated by "bitbake meta-toolchain-qt5";

referred to the guide "Building Qt5 using yocto on Wandboard - Wandboard Wiki";

qtbase-plugs packages is present, libqeglfs.so is present also;

Qtcreator is setup: device, kit, compiler, debugger, rootfs, ssh connection;

NB: I only changed the rootfs on the board, the kernel, uboot, dtb files still use the embest ones. The kernel is 3.10.17_1.0.0; Will this affect the problem?

Now only one problem: when I run "./helloworld -platform eglfs", there is the error "Could not open egl display. Aborted". I have tried to export FB_MULTI_BUFFER=2, export DISPLAY=:0.0, export QT_EGLFS_IMX6_NO_FB_MULTI_BUFFER=1, the error remains. I also tried the fbset, to modify the depth to 32bit, cannot solve the problem.

My another post link :How to enable eglfs plugin in Yocto setup? using yocto+meta-qt5 for Riotboard

My final target is to develop Qt5 applications for a customized board (similar to Riotboard), besides there will be other C applications which also run on the board. For the real time function, I will also include Xenomai, so this project will include many stuff.

bblayers.conf:

LCONF_VERSION = "6"

BBPATH = "${TOPDIR}"
BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../..')}"

BBFILES ?= ""
BBLAYERS = " \
  ${BSPDIR}/sources/poky/meta \
  ${BSPDIR}/sources/poky/meta-yocto \
  ${BSPDIR}/sources/meta-openembedded/meta-oe \
  ${BSPDIR}/sources/meta-openembedded/meta-multimedia \
  ${BSPDIR}/sources/meta-fsl-arm \
  ${BSPDIR}/sources/meta-fsl-arm-extra \
  ${BSPDIR}/sources/meta-fsl-demos \
  ${BSPDIR}/sources/meta-qt5 \
  ${BSPDIR}/sources/meta-openembedded/meta-ruby \
"

local.conf:

MACHINE ??= 'imx6solosabreauto'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks ssh-server-openssh "

USER_CLASSES ?= "buildstats image-mklibs"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
    STOPTASKS,${TMPDIR},1G,100K \
    STOPTASKS,${DL_DIR},1G,100K \
    STOPTASKS,${SSTATE_DIR},1G,100K \
    STOPTASKS,/tmp,100M,100K \
    ABORT,${TMPDIR},100M,1K \
    ABORT,${DL_DIR},100M,1K \
    ABORT,${SSTATE_DIR},100M,1K \
    ABORT,/tmp,10M,1K"

PACKAGECONFIG_append_pn-qemu-native = " sdl"

PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"

PACKAGECONFIG_DISTRO_pn-qtbase = "accessibility"

CONF_VERSION = "1"
BB_NUMBER_THREADS = '8'
PARALLEL_MAKE = '-j 8'

DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = "1"
DISTRO_FEATURES_remove="x11 wayland "

IMAGE_INSTALL_append = " gcc g++ binutils libgcc libgcc-dev \
libstdc++ libstdc++-dev libstdc++-staticdev \
autoconf automake ccache chkconfig glib-networking glibmm \
packagegroup-core-buildessential pkgconfig  \
boost cmake zlib glib-2.0 \
    ruby \
    cpufrequtils \
    nano \
    gdb \
    gstreamer1.0 \
    gst-meta-video \
    gst1.0-fsl-plugin \
    gst-plugins-base-app \
    gst-plugins-base \
    gst-plugins-good \
    gst-plugins-good-rtsp \
    gst-plugins-good-udp \
    gst-plugins-good-rtpmanager \
    gst-plugins-good-rtp \
    gst-plugins-good-video4linux2 \
    openssh-sftp-server \
    packagegroup-fsl-gstreamer1.0 \
    packagegroup-fsl-tools-testapps \
    packagegroup-fsl-tools-benchmark \
    packagegroup-fsl-gstreamer1.0-full \
    packagegroup-fsl-tools-gpu \
    imx-vpu \
    imx-test \      
    qtbase-fonts \
    qtbase-plugins \
    qtbase-tools \
    qtdeclarative \
    qtdeclarative-plugins \
    qtdeclarative-tools \
    qtdeclarative-qmlplugins \
    qtmultimedia \
    qtmultimedia-plugins \
    qtmultimedia-qmlplugins \
    qtsvg \
    qtsvg-plugins \
    qtsensors \
    qtimageformats-plugins \
    qtsystems \
    qtsystems-tools \
    qtsystems-qmlplugins \
    qtscript \
    qt3d \
    qt3d-qmlplugins \
    qtwebkit \
    qtwebkit-examples-examples \
    qtwebkit-qmlplugins \
    qtgraphicaleffects-qmlplugins \
    qtconnectivity-qmlplugins \
    qtlocation-plugins \
    qtlocation-qmlplugins \
    cinematicexperience \
    cairo pango fontconfig freetype pulseaudio dbus \
    alsa-lib alsa-tools alsa-state fsl-alsa-plugins \
    i2c-tools \ 
    "

Thanks.

Community
  • 1
  • 1
James.Zhou
  • 131
  • 1
  • 2
  • 14

2 Answers2

0

This is what I used for EGLFS:

PACKAGECONFIG_append_pn-qtmultimedia = " gstreamer010"

PACKAGECONFIG_append_pn-qtbase = " sql-sqlite \
gst-plugins-base \
accessibility \
pulseaudio \
examples \
"
EXTRA_IMAGE_FEATURES = " ssh-server-openssh package-management \
             tools-sdk tools-debug"

Also, You do not neeed these;

PACKAGECONFIG_append_pn-qemu-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
Charles C.
  • 3,725
  • 4
  • 28
  • 50
  • Thanks. I would try this! I really had nothing else to try. – James.Zhou Apr 29 '16 at 01:31
  • I tried the above method this morning, but the error remains. Now I try to use the image which was generated by the yocto system, not the one from the embest (riotboard's supplier).I doubt that there are some issues between the embest kernel image and the qt5 functionality. – James.Zhou May 03 '16 at 04:40
0

Finally I solved the problem, I switched to the Dizzy branch for both yocto and meta-qt5 layer. In this way, it matchs the kernel version provided by the embest.

James.Zhou
  • 131
  • 1
  • 2
  • 14