Yocto + Qt5 на i.MX6 (FSL Community BSP): зависимость xcb для webkit?

Я изучаю Yocto (головокружение) и пытаюсь подготовить изображение для системы на базе Freescale i.MX6. Я начал с BSP сообщества FSL, а затем добавил meta-qt5 слой.

Затем я сделал некоторые настройки в local.conf файле, чтобы собрать Qt и исключить X11 и Wayland из компиляции (поскольку я хочу использовать Qt5 через платформу EGLFS):

EXTRA_IMAGE_FEATURES = "debug-tweaks ssh-server-openssh"

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 packagegroup-fsl-tools-testapps git glive \
    ruby \
    cpufrequtils \
    nano \
    gdb \
    gstreamer \
    gst-meta-video \
    gst-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-gstreamer \
    packagegroup-fsl-tools-testapps \
    packagegroup-fsl-tools-benchmark \
    imx-vpu \
    imx-test \       
    qtbase-fonts \
    qtbase-plugins \
    qtbase-tools \
    qtbase-examples \
    qtdeclarative \
    qtdeclarative-plugins \
    qtdeclarative-tools \
    qtdeclarative-examples \
    qtdeclarative-qmlplugins \
    qtmultimedia \
    qtmultimedia-plugins \
    qtmultimedia-examples \
    qtmultimedia-qmlplugins \
    qtsvg \
    qtsvg-plugins \
    qtsensors \
    qtimageformats-plugins \
    qtsystems \
    qtsystems-tools \
    qtsystems-examples \
    qtsystems-qmlplugins \
    qtscript \
    qt3d \
    qt3d-examples \
    qt3d-qmlplugins \
    qt3d-tools \
    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 alsa-utils-alsaconf fsl-alsa-plugins \
    i2c-tools \ 
    strace \
    "

PACKAGECONFIG_remove = " x11 wayland"
DISTRO_FEATURES_remove = " x11 wayland"

Все в порядке (выдача bitbake fsl-image-multimedia-full): образ построен, и я могу компилировать и запускать минимальные приложения, использующие Qt на платформе EGLFS.

Проблема возникает, когда я хочу использовать QML WebView ... Если я попытаюсь сделать это во время выполнения, приложение Qt выйдет со следующим сообщением:

root @ imx6qsabresd: ~ # / run / media / sda1 / MyTestApp -platform eglfs Это приложение не запустилось, потому что не смогло найти или загрузить плагин платформы Qt "xcb".

Доступные плагины платформы: eglfs, minimal, minimalegl, offscreen.

Переустановка приложения может решить проблему. ВНИМАНИЕ: произошел сбой веб-процесса на "".

Кажется, что часть qtdeclarative, связанная с webkit, все еще имеет некоторые зависимости от xcb, то есть от _6 _... почему? Я делаю что-то неправильно?


person Morix Dev    schedule 13.11.2014    source источник


Ответы (1)


Хорошо, нашел решение: я просто добавил -qpa eglfs в конфигурацию Qt в Yocto. Вроде работает.

person Morix Dev    schedule 19.11.2014
comment
Не могли бы вы уточнить, где именно нужно сделать это изменение? Прошло много времени с тех пор, как вы нашли это решение, я понимаю, если вы не можете его вспомнить. - person Isaac; 06.04.2015
comment
@Isaac: в qtbase.inc вы можете изменить PACKAGECONFIG[gles2] = "-opengl es2 -eglfs,,virtual/libgles2 virtual/egl" на PACKAGECONFIG[gles2] = "-opengl es2 -eglfs -qpa eglfs,,virtual/libgles2 virtual/egl"; в качестве альтернативы вы можете подготовить qtbase_%.bbappend файл, выполняя те же действия - person Morix Dev; 07.04.2015