如何在我的嵌入式 Linux 映像中找到在 yocto 中创建的自定义配方

问题描述 投票:0回答:1

我使用 STM32MP 分发包和 X-LINUX-QT 插件为 STM32MP157F-DK2 板创建了 st-image-qt 映像。

我可以在 Linux 中使用 dd 命令刷新此映像,并且我的目标板运行正常。

另一方面,我使用 qt 6.7.3 创建了一个 qt 快速应用程序(我可以使用 qt 创建者测试它是否正常),现在我需要在我的 st-image-qt 图像中添加这个 qt 应用程序。我可以通过“bitbake mygui”来 bitbake 这个自定义食谱

我创建了自定义图层和自定义配方,并将此自定义图层添加到我的 bblayers 中。然后,我用这个自定义配方再次构建了图像,效果很好。

问题是我希望在我的 bin 目录中找到这个 qt 应用程序,但我看不到它。

SUMMARY = "This is the GUI for Hespect Software medical device"
DESCRIPTION = "Recipe created by bitbake-layers"
LICENSE = "CLOSED"
SECTION = "Mysection"

DEPENDS += " qtbase \
             qtdeclarative-native \
             qtdeclarative \
             qtquick3d \
             qtcharts"
             
RDEPENDS_${PN} += "qtwayland"

EXTRA_OECMAKE += "-DCMAKE_PREFIX_PATH=${STAGING_DIR_HOST}${prefix}"

SRC_URI += "file://main.cpp"
SRC_URI += "file://CMakeLists.txt"
SRC_URI += "file://CMakeLists.txt.user"
SRC_URI += "file://Backendsensors.h"
SRC_URI += "file://Backendsensors.cpp"
SRC_URI += "file://brushfactory.h"
SRC_URI += "file://brushfactory.cpp"
SRC_URI += "file://Main.qml"

# Add SVG images from the assets/images folder
SRC_URI += "file://assets/images/battery-full.svg"
SRC_URI += "file://assets/images/battery-mid.svg"
SRC_URI += "file://assets/images/rss-low.svg"
SRC_URI += "file://assets/images/signal-full.svg"
SRC_URI += "file://assets/images/signal-mid.svg"
SRC_URI += "file://assets/images/battery-low.svg"
SRC_URI += "file://assets/images/rss-full.svg"
SRC_URI += "file://assets/images/rss-mid.svg"
SRC_URI += "file://assets/images/signal-low.svg"

            
S = "${WORKDIR}/mygui"

do_install () {
    install -d ${D}${bindir}
    install -m 0775 mygui ${D}${bindir}/
}

FILES_${PN} += "${bindir}/mygui"

inherit cmake_qt5

在我的本地conf文件中我添加了:

IMAGE_INSTALL_APPEND += "mygui"

qt stm32 embedded-linux yocto yocto-recipe
1个回答
0
投票

您还必须将配方添加到您正在构建的图像中。在其中一层中应该有一个 st-image-qt.bb 文件。应该在

<layername>/recipes-core/images
。在那里,你必须用
IMAGE_INSTALL:append = " mygui "
添加它(注意“后面的空格”)。只有这样菜谱才会包含在图像中,仅添加图层是不够的。

© www.soinside.com 2019 - 2024. All rights reserved.