【发布时间】:2019-10-03 05:55:51
【问题描述】:
在this 回答之后,我正在尝试添加在上次 Yocto 构建期间忘记启用的 sqlite (sqlite3) Qt5 插件。这是我所做的:
在我自己的自定义层 (meta-custom-layer/recipes-core) 下,我添加了一个文件 qtbase_%.bbappend。
我在里面放了:
PACKAGECONFIG_append = " sql-sqlite"
PACKAGECONFIG[sql-sqlite] = "-sql-sqlite,-no-sql-sqlite,sqlite3"
然后我删除了tmp文件夹并发出bitbake qtbase。我没有删除sstate-cache,因为我添加了一些东西,而不是删除或更改。
解析配方后,它成功重建了tmp 文件夹,但我找不到与请求的插件相关的任何内容(应该是libqsqlite.so)。
我不明白上面链接中提供的答案? 添加此插件的正确方法是什么?
更新
为了确保没有其他需要调整的,这里是图像 bb 文件的内容:
SUMMARY = "blabla"
LICENSE = "Proprietary"
include recipes-st/images/st-image.inc
inherit core-image distro_features_check
CONFLICT_DISTRO_FEATURES = "x11 wayland"
IMAGE_LINGUAS = "en-us"
IMAGE_FEATURES += "splash package-management ssh-server-dropbear"
IMAGE_ROOTFS_MAXSIZE = ""
IMAGE_QT_MANDATORY_PART = " \
qtbase \
qtbase-plugins \
qtbase-tools \
"
IMAGE_QT_OPTIONAL_PART = " \
qtserialport \
"
CORE_IMAGE_EXTRA_INSTALL += " \
systemd-networkd-configuration \
\
packagegroup-framework-tools-core-base \
packagegroup-framework-tools-kernel-base \
packagegroup-framework-tools-network-base \
packagegroup-framework-tools-python2-base \
packagegroup-framework-tools-python3-base \
\
packagegroup-framework-tools-core \
packagegroup-framework-tools-kernel \
packagegroup-framework-tools-network \
packagegroup-framework-tools-python2 \
packagegroup-framework-tools-python3 \
\
packagegroup-core-eclipse-debug \
\
${IMAGE_QT_MANDATORY_PART} \
${IMAGE_QT_OPTIONAL_PART} \
"
这里是RDEPENDS_${PN} var in layers/meta-qt5/recipes-qt/packagegroups/packagegroup-qt5-toolchain-target.bb 的内容:
RDEPENDS_${PN} += " \
packagegroup-core-standalone-sdk-target \
libsqlite3-dev \
qtbase-dev \
qtbase-mkspecs \
qtbase-plugins \
qtbase-staticdev \
qtconnectivity-dev \
qtconnectivity-mkspecs \
qtmqtt-dev \
qtmqtt-mkspecs \
qtserialport-dev \
qtserialport-mkspecs \
qtserialbus-dev \
qtserialbus-mkspecs \
qtsystems-dev \
qtsystems-mkspecs \
qttools-dev \
qttools-mkspecs \
qttools-staticdev \
qtwebsockets-dev \
qtwebsockets-mkspecs \
qtwebchannel-dev \
qtwebchannel-mkspecs \
"
【问题讨论】:
-
经常运行 bitbake -e 可以解决此类问题。
-
您尝试过搜索
*sqlite*.so*? -
@RichardNixon 是的,但它只找到与 Qt5 插件无关的
libsqlite3*文件。 -
1.您使用哪个 qt5 分支? 2.显示
bitbake-layers show-appends | grep qtbase的输出 -
那么 bitbake 看不到你的 bbappend。确保该层包含在
bblayers.conf中,并且它的路径相似,例如./youc-customer-layer/recipes-qt/qt5/qtbase_git.bbappend