我试图将文件夹放入文件系统的根目录.在文档(例如
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等.