如何在Yocto中为Raspberry PI构建Qt5 sdk?

时间:2019-05-21 22:39:59

标签: yocto

我正在尝试构建meta-toolchain-qt5。但是,我得到这些错误。我正在遵循指南- Guide Qt5 build

这是我到目前为止所做的事情-

内心不安-

$git clone https://github.com/meta-qt5/meta-qt5.git

此后,我已更改

conf / bblayers.conf

POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /home/ABC/TSR/yocto_demo/poky/meta \
  /home/ABC/TSR/yocto_demo/poky/meta-poky \
  /home/ABC/TSR/yocto_demo/poky/meta-yocto-bsp \
  /home/ABC/TSR/yocto_demo/poky/meta-raspberrypi \
  /home/ABC/TSR/yocto_demo/poky/meta-qt5 \
  "

接下来,我在conf / local.conf中添加了

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  \
    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 \ 
    "

DISTRO_FEATURES_remove = "x11 wayland"

现在,构建它之后,出现以下错误-

$bitbake meta-toolchain-qt5

$bitbake meta-toolchain-qt5
Loading cache: 100% |##########################################################################################################################| Time: 0:00:00
Loaded 1431 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'tslib' (but /home/ABC/TSR/yocto_demo/poky/meta-qt5/recipes-qt/qt5/qtbase_git.bb DEPENDS on or otherwise requires it). Close matches:
  taglib
NOTE: Runtime target 'qttools-staticdev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qttools-staticdev', 'qtbase', 'tslib']
NOTE: Runtime target 'packagegroup-qt5-toolchain-target' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['packagegroup-qt5-toolchain-target', 'qttools-staticdev', 'qtbase', 'tslib']
ERROR: Required build target 'meta-toolchain-qt5' has no buildable providers.
Missing or unbuildable dependency chain was: ['meta-toolchain-qt5', 'packagegroup-qt5-toolchain-target', 'qttools-staticdev', 'qtbase', 'tslib']

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

tmp/work/arm1176jzfshf-vfp-poky-linux-gnueabi/qtwebkit/5.12.3+gitAUTOINC+beaeeb9988-r0/git/Source/WTF/wtf/HashTraits.h:226:8: note: 'struct WTF::KeyValuePair<void*, JSC::Weak<JSC::JSObject> >' declared here | struct KeyValuePair { | ^~~~~~~~~~~~ | ninja: build stopped: subcommand failed. –

1 个答案:

答案 0 :(得分:1)

您有两个选择

  

第一

tslibmeta-oe层提供,因此您需要获取该层并将其添加到BBLAYERS中,以便在您的戳树之内

git clone git://github.com/openembedded/meta-openembedded

conf/bblayers.conf中将以下内容添加到BBLAYERS列表中

 /home/ABC/TSR/yocto_demo/poky/meta-openembedded/meta-oe
  

第二

在您的图层中为qtbase添加一个bbappend文件,例如 qtbase_%.bbappend

PACKAGECONFIG_remove = "tslib"