如何在yocto中对设备名称进行分组

如何在yocto中对设备名称进行分组,yocto,Yocto,我们公司开发了几种硬件,并支持YoctoLinux。我们还将其他机器(如rpi)集成到我们的Yocto项目中。我们有自己的bbappend文件,我们希望通过添加后缀将其作为指定的机器。因此,它不会影响其他机器,如rpi 例如,SRC\u URI\u ourMachine+=”\。但是我们有几个机器,如何将它们打包成一个像rpi一样的机器。Raspberry Pi有几个模块,以及RaspberryPi、RaspberryPi2、RaspberryPi3、RaspberryPi CM、Raspber

我们公司开发了几种硬件,并支持YoctoLinux。我们还将其他机器(如rpi)集成到我们的Yocto项目中。我们有自己的bbappend文件,我们希望通过添加后缀将其作为指定的机器。因此,它不会影响其他机器,如rpi

例如,
SRC\u URI\u ourMachine+=”\
。但是我们有几个机器,如何将它们打包成一个像rpi一样的机器。Raspberry Pi有几个模块,以及RaspberryPi、RaspberryPi2、RaspberryPi3、RaspberryPi CM、RaspberryPi-CM3。但是如果你做一个
SRC\u URI\u rpi+=“\
,它会影响所有的rpi机器


我们如何才能做到这一点?谢谢。

我认为您可以通过使用-
机器覆盖
变量来解决这个问题

在配置文件meta-name/conf/machine/include/machine-name.inc中
MACHINEOVERRIDES=。“通用名称:”

然后,在任何配方中,您都可以这样使用它(例如,与
SRC_URI
):
SRC\u URI\u common-name=“…”

文档链接:


poky with qemuall中的示例:

我认为使用-
MACHINEOVERRIDES
变量可以解决这个问题

在配置文件meta-name/conf/machine/include/machine-name.inc中
MACHINEOVERRIDES=。“通用名称:”

然后,在任何配方中,您都可以这样使用它(例如,与
SRC_URI
):
SRC\u URI\u common-name=“…”

文档链接:


poky with qemuall中的示例:

还有另一个解决方案是
SOC\u FAMILY=common name:
。此解决方案需要将
include conf/machine/include/soc family.inc
放入会议或inc文件中


然后,在任何配方中,您都可以这样使用它(例如,使用
SRC\u URI
):
SRC\u URI\u common-name=“…”
还有另一种解决方案,即
SOC\u FAMILY=common-name:
。此解决方案需要将
include conf/machine/include/soc family.inc
放入会议或inc文件中


然后在任何配方中,您都可以这样使用它(例如,与
SRC\u URI
):
SRC\u URI\u common-name=“…”

谢谢!在您的示例中,还有一个问题,
MACHINEOVERRIDES=。“common name”
=.
是什么意思?这只是预编操作,在BitBake文档中也有很好的描述-实际上我发现Raspberry Pi使用全局变量
SOC\u FAMILY=“rpi”
。他们之间有什么不同?哪一个最适合我?我只是能够尝试你的解决方案,但它不适合我。它应该是
MACHINEOVERRIDES=。“通用名称:”
,需要:列。谢谢!在您的示例中,还有一个问题,
MACHINEOVERRIDES=。“common name”
=.
是什么意思?这只是预编操作,在BitBake文档中也有很好的描述-实际上我发现Raspberry Pi使用全局变量
SOC\u FAMILY=“rpi”
。他们之间有什么不同?哪一个最适合我?我只是能够尝试你的解决方案,但它不适合我。它应该是
MACHINEOVERRIDES=。“通用名称:”
,需要:列。