【问题标题】:Adding random files into root directoy of yocto image?将随机文件添加到 yocto 图像的根目录中?
【发布时间】:2020-11-06 05:36:57
【问题描述】:

我们如何添加随机文件,例如jpeg、mp3、.py 文件到某个目录,例如/data/myfiles 在 yocto 中? 到目前为止我所做的步骤是我创建了一个我自己的带有 bitbake-layers 的层,我还可以将已经可用的食谱添加到我的层中,然后将其添加到我的图像中。

我做了 bitbake core-minimal-image,它被构建,然后我可以使用我通过 local.conf 或 .bbappend 文件添加的包。 我找到了这个食谱文件..

SUMMARY = "Copy mksd.sh script to image deployment area"
SECTION = "devel"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = \
"file://${WORKDIR}/mksd.sh;beginline=4;endline=7;md5=d8d50b7d91345eb72f51bbced7fc791b"
SRC_URI = "file://mksd.sh"

#This package doesn't have any files for the rootfs in it, option needed to create an empty 
# package so when the rootfs image is made it finds the mksd_xxx.deb package and doesn't complain
FILES_${PN} = ""
ALLOW_EMPTY_${PN} = "1"


# Copy script to the deploy area with u-boot, uImage, and rootfs
do_deploy () {
   install -d ${DEPLOY_DIR_IMAGE}
   install -m 0755 ${WORKDIR}/mksd.sh ${DEPLOY_DIR_IMAGE}
}
addtask deploy after do_install

但现在我有点困惑,例如我有一个 .jpeg 文件,我希望它复制到 /data/my files 目录到我的目标系统中。这意味着我想首先创建一个名为 /data/myfiles 的目录,然后我想通过配方复制一个图像。 那么当我将图像刻录到我的设备中时,它应该显示在我的设备中吗? 我该怎么做?

【问题讨论】:

    标签: linux yocto bitbake recipe


    【解决方案1】:

    你不能创建一个简单的食谱来做到这一点吗?这样您就可以通过添加/删除配方来管理依赖关系或更改它们是否已安装。这就是 Yocto 的工作方式。

    DESCRIPTION = "File Installer"
    LICENSE = "CLOSED"
    
    SRC_URI = " \
        file://filea \
        file://fileb \
        file://filec \
        file://filed \
    "
    
    S = "${WORKDIR}"
    
    do_install() {
        install -d ${D}/path
        install ${S}/filea ${D}/path
        install ${S}/fileb ${D}/path
        install ${S}/filec ${D}/path
        install ${S}/filed ${D}/path
    }
    
    FILES_${PN} += "/path"
    

    【讨论】:

      【解决方案2】:

      我相信最好的选择是用你的文件创建一个meta-your-layer/recipes-core/base-files/base-files_%.bbappend

      您将在 rootfs 中指定文件的位置和安装位置。

      base-files_3.0.14.bb为例。

      【讨论】:

      • 为什么这比创建自己的食谱更好?
      • base-files 已经设计用于添加文件并安装在您的系统上。您可以创建自己的配方,只要您知道如何正确执行,就可以研究任务及其功能(do_fetch,do_unpack,do_configure,do_compile,do_install,do_deploy,...)在您的情况下,请参阅@ 987654324@。我相信base-files_%.bbappend 会更实用地解决您的问题。
      猜你喜欢
      • 2020-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-11
      相关资源
      最近更新 更多