Linux 如何列出用于使用bitbake构建特定包的所有.bb和.bbappend文件? 让我们考虑一下包“虚拟/内核”。 我想知道构建这个包涉及哪些.bb和.bbappend文件
我知道我可以通过以下方式获得软件包名称: bitbake-e虚拟/内核| grep^BP= 这个命令给出了用于构建虚拟/内核的包的名称,在我的例子中是Linux 如何列出用于使用bitbake构建特定包的所有.bb和.bbappend文件? 让我们考虑一下包“虚拟/内核”。 我想知道构建这个包涉及哪些.bb和.bbappend文件,linux,embedded-linux,yocto,bitbake,Linux,Embedded Linux,Yocto,Bitbake,我知道我可以通过以下方式获得软件包名称: bitbake-e虚拟/内核| grep^BP= 这个命令给出了用于构建虚拟/内核的包的名称,在我的例子中是linux-fslc-4.0+gitautinc+19ebefd40a。 但是,我不知道如何获取用于构建linux-fslc-4.0+gitatoinc+19ebefd40a软件包的.bb和.bbappend文件列表(包括它们的位置)。首先,您应该知道,构建单个软件包可能涉及许多文件,对于构建复杂的软件包(如Linux内核),这一点尤其重要 如果通
linux-fslc-4.0+gitautinc+19ebefd40a
。
但是,我不知道如何获取用于构建
linux-fslc-4.0+gitatoinc+19ebefd40a
软件包的.bb和.bbappend文件列表(包括它们的位置)。首先,您应该知道,构建单个软件包可能涉及许多文件,对于构建复杂的软件包(如Linux内核),这一点尤其重要
如果通过管道将“bitbake-efoo”的输出传输到一个文件,然后分析其内容,则可以获得更多信息。差不多
$ bitbake -e virtual/kernel >kernel.env
例如,在输出的早期,您可以在bitbake扫描和读取类文件链时找到包含列表。同样非常有用的是,尽管与问题没有直接关系,但您可以看到在读取和解析这些包含文件时对变量所做的累积更改
如果隔离设置变量的行,则可以有效地构建包构建过程中涉及的文件列表。大概是这样的:
$ cat kernel.env | egrep '^#[ ]*append|^#[ ]*set' | cut -d ':' -f 1 | awk '{print $3}' | sort | uniq
…应生成生成生成包所涉及的bitbake文件(*.conf、*.bb、*.bbclass等)的列表。难看,但它能工作;)
<>你也可以考虑加入FieloDoc IRC上的O.OE和YYOCTO,那里有很多非常聪明的人,他们比我更了解这些东西!祝你好运。你可以用
bitbake-layers show-appends
列出使用.bbappend文件扩展的所有配方。它将指示所有此类文件的优先级和位置。请尝试以下操作:
显示配方的.bb文件
RECIPE_NAME="linux-yocto"
bitbake -e $RECIPE_NAME | grep ^FILE=
RECIPE_NAME="linux-yocto"
bitbake-layers show-appends linux-yocto
显示.bbappend配方文件
RECIPE_NAME="linux-yocto"
bitbake -e $RECIPE_NAME | grep ^FILE=
RECIPE_NAME="linux-yocto"
bitbake-layers show-appends linux-yocto
旧版本的bitbake可能不支持使用bitbake层显示附加linux yocto
查询特定配方。改为使用位烘焙层显示附录