embedded-linux – 如何在bitbake的配方中将文件夹或文件添加到根目录?

我试图将文件夹放入文件系统的根目录.在文档(例如 here)中,它们主要使用变量,因此来自SRC_URI的文件文件夹导致存储在/usr/bin之下或者某些东西但是从不存在于/中.

所以这是我的食谱:

DESCRIPTION = "Example for adding files and folders to rootfs"

SRC_URI += "file://example_folder"
SRC_URI += "file://example_file"

LICENSE = [...]

do_install() {
    install -d ${D}/rootfolder
    cp -r ${workdir}/example_folder ${D]/rootfolder/
    install -m 0755 ${workdir}/example_file ${D}/rootfolder
}

这只是我尝试的很多do_install变体中的一个.它们中的每一个都导致错误:在基本提要中找不到示例[或]文件文件夹没有放在根目录中但是在/中usr / bin如上所述.

解决方法

在这种情况下,你得到错误错误:在基础提要中找不到示例[…]”很可能你实际上已经成功构建了你的配方example.bb.当然,假设在构建图像时出现错误,其中包含IMAGE_INSTALL =“example”.

如果你将文件安装到/ rootfolder中,那么OE本身就没有任何东西知道如何将这些文件打包成rpm,ipk或deb包.您需要通过添加以下行来将自己添加到您的食谱中:
文件_ ${PN} =“/ rootfolder”

这样做,上面的例子应该有效.

根据您安装的文件,您可能希望将其中一些文件添加到其他软件包中,例如${PN} -dbg,${PN} -dev等.

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...