Yocto:加入“及”;“树”;要镜像,输出二进制文件在哪里?

Yocto:加入“及”;“树”;要镜像,输出二进制文件在哪里?,yocto,bitbake,Yocto,Bitbake,为了更好地理解Yocto的工作原理,我尝试做一件非常简单的事情。 我想在我的图像中添加工具树。 到目前为止,我做到了: $ bitbake -s | grep tree libhtml-tree-perl :5.03-r0 libhtml-tree-perl-native :5.03-r0

为了更好地理解Yocto的工作原理,我尝试做一件非常简单的事情。 我想在我的图像中添加工具
。 到目前为止,我做到了:

$ bitbake -s | grep tree
libhtml-tree-perl                                    :5.03-r0                          
libhtml-tree-perl-native                             :5.03-r0                          
tree                                                :1.7.0-r0                          
然后我将
添加到我的
.bb
文件中:

IMAGE_INSTALL += " \
    tree \
"
构建

$ bitbake tree
$ bitbake <image>
但是:


所以。。。二进制文件在哪里?

首先,如果图像在
image\u安装中有
树,则无需执行
bitbake tree
即可编译树。Yocto有这方面的逻辑,并将为您编译并将其放入图像中。那么,例如,您是否在local.conf中的INHERIT中使用rm_?这也许可以解释为什么你在tmp/work/中没有东西。。。因为当成功编译和打包时,所有的东西都被清理了。最后,也许你找对地方了?如果这些文件应该在$BASE_WORKDIR中找到(使用
bitbake-e | grep-e“^BASE_WORKDIR”
找到它)@qschulz,我开始看到这个谜题。是的,我在
INHERIT
中找到了
$BASE\u WORKDIR
的位置。最后一个问题:如果我在已经构建了映像之后添加包,它就足以再次
bitbake
?我真的不想清除整个
tmp
…那么这一切都是有意义的:)仅供参考,如果您不想全局禁用rm_work,而只是针对配方,请尝试使用rm_work_EXCLUDE(c.f.)。如果您更改了Yocto对映像或配方所需的文件(例如,image_INSTALL),Yocto将检测到它并重建映像/配方及其依赖项。如果必须清除tmp,则会出现问题,必须进行修复。要么在你这边修好,要么向维修人员报告。你说得对。现在我了解了它的工作原理,所有的工作都如预期的那样。你的答案应该是答案,而不是评论。我最近多次看到自己在写这篇文章:)
$ find tmp/ -name tree -type f
tmp-glibc/pkgdata/stm32mp1-sw25v00/runtime/tree
tmp-glibc/pkgdata/stm32mp1-sw25v00/tree
tmp-glibc/sysroots-components/cortexa7t2hf-neon-vfpv4/tree/sysroot-providers/tree
$ cat tmp-glibc/pkgdata/stm32mp1-sw25v00/runtime/tree
PN: tree
PV: 1.7.0
PR: r0
PKGV: 1.7.0
PKGR: r0.0
LICENSE: GPLv2
DESCRIPTION: A recursive directory listing command.
SUMMARY: A recursive directory listing command
RDEPENDS_tree: glibc (>= 2.28)
SECTION: console/utils
PKG_tree: tree
FILES_tree: /usr/bin/* /usr/sbin/* /usr/libexec/* /usr/lib/lib*.so.* /etc /com /var /bin/* /sbin/* /lib/*.so.* /lib/udev /usr/lib/udev /lib/udev /usr/lib/udev /usr/share/tree /usr/lib/tree/* /usr/share/pixmaps /usr/share/applications /usr/share/idl /usr/share/omf /usr/share/sounds /usr/lib/bonobo/servers
FILES_INFO: {"/usr/bin/tree": 47364}
FILERDEPENDSFLIST_tree: /usr/bin/tree
FILERDEPENDS_/usr/bin/tree_tree:  libc.so.6(GLIBC_2.4) libc.so.6 rtld(GNU_HASH)
PKGSIZE_tree: 47364

$ cat tmp-glibc/pkgdata/stm32mp1-sw25v00/tree
PACKAGES: tree-dbg tree-staticdev tree-dev tree-doc tree-locale tree

$ cat tmp-glibc/sysroots-components/cortexa7t2hf-neon-vfpv4/tree/sysroot-providers/tree
[it's empty]