因此,我在我创建的层中使用了一个 .bbappend 文件,并且在该层中,我还有一些要安装的其他本地文件。
问题是我不确定 Yocto 变量正确代表我的 bbappend 文件所在的目录。像“THISDIR”这样的变量最终指向原始配方目录 - 而不是我层中的附加目录。在不放置某种绝对路径的情况下,我怎样才能最好地做到这一点?
因此,我在我创建的层中使用了一个 .bbappend 文件,并且在该层中,我还有一些要安装的其他本地文件。
问题是我不确定 Yocto 变量正确代表我的 bbappend 文件所在的目录。像“THISDIR”这样的变量最终指向原始配方目录 - 而不是我层中的附加目录。在不放置某种绝对路径的情况下,我怎样才能最好地做到这一点?
将您的文件复制到存在.bb
or.bbappend
文件的当前目录。并添加跟随线
hello.bbappend
FILESEXTRAPATHS_prepend := "${THISDIR}:"
SRC_URI += "file://yourfile"
do_install_append(){
install -d ${D}/some-dest-dir
install -m 0644 ${S}/yourfile ${D}/some-dest-dir/
}
这里THIS
的 dir 意味着你告诉 bitbake 文件存在于 .bb
or.bbappend
文件所在的目录中。
例如:meta-hellolayer 示例/
|_ hello.c
|_ hello.bbappend
现在示例目录是THIS
.bbappend 文件中的目录。
Note
:确保您需要添加layer path(meta-helolayer)
到build/conf/bblayer.conf