我正在尝试将文件夹放入文件系统的根目录中。在文档中(例如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
个变种中的一个。每个变种都导致Error: example not found in the base feeds [...]
或者文件和文件夹没有放在根目录中但是放在{{1如上所述。
答案 0 :(得分:10)
在这些情况下,您收到了错误"错误:示例未在基本订阅源中找到[...]"你很可能已经成功地建立了你的食谱example.bb。当然,假设在构建图像时出现错误,其中包含IMAGE_INSTALL += "example"
。
如果您将文件安装到/rootfolder
,那么OE本身就无法知道如何将这些文件打包成rpm
,ipk
或{{1}包。您需要通过添加如下行来将自己添加到您的食谱中:
deb
这样做,上面的例子应该有效。
根据您安装的文件,您可能希望将其中一些文件添加到其他软件包中,例如FILES_${PN} += "/rootfolder"
,${PN}-dbg
等。