我希望在图像构建过程中复制文件夹及其内容为yocto。对于这个过程,我使用以下配方
SUMMARY = "Installation Recipe"
DESCRIPTION = "It installs folder"
HOMEPAGE = ""
LICENSE = "CLOSED"
MY_FILES1 = "/home/jane/d1fold"
MY_FILES2 = "/home/jane/d2fold"
inherit allarch
do_install() {
install -d ${D}/home/root
cp -R ${MY_FILES1}/* ${D}/home/root
cp -R ${MY_FILES2} ${D}/home/root
}
FILES_${PN} += " /home/root"
但是我收到以下错误 ERROR:QA问题:weaved:Recipe继承了allarch类,但是打包了特定于体系结构的二进制文件[arch] 。如何解决此错误?
答案 0 :(得分:2)
此错误意味着您正在尝试安装特定于体系结构的二进制文件(针对x86,arm64等编译),同时继承allarch类。来自yocto reference manual:
allarch类由不生成特定于体系结构的输出的配方继承。
这是一个明显的矛盾。
你想做什么?创建仅安装某些文件的配方似乎是错误的架构决策。你为什么要继承allarch?
答案 1 :(得分:1)
您只是将文件复制到rootfs
。所以你不需要使用inherit allarch
。删除并编译。