2017-10-18 3 views
0

gruppieren Unser Unternehmen entwickelte mehrere Hardware und die Unterstützung von Yocto Linux. Wir haben auch andere Maschinen wie rpi in unser Yocto-Projekt integriert. Wir haben unsere eigenen bbappend-Dateien, die wir als Maschine angeben wollen, indem wir den Postfix hinzufügen. So wird es andere Maschinen wie rpi nicht beeinflussen.Wie Gruppenname in yocto

Zum Beispiel SRC_URI_ourMachine += " \. Wie auch immer wir haben mehrere Maschinen, wie können wir sie in einen wie die RPI packen. Raspberry Pi hat mehrere Module sowie RaspberryPi, RaspberryPi2, RaspberryPi3, HimbeerPi-CM, RaspberryPi-CM3. Aber wenn Sie eine SRC_URI_rpi += " \ machen, wirkt sich das auf alle rpi-Maschinen aus.

Wie können wir das erreichen? Vielen Dank.

Antwort

1

Ich denke, dass Sie dieses Problem mit - MACHINEOVERRIDES Variable lösen können.

in der Konfigurationsdatei Meta-name/conf/Maschine/include/Maschine-name.inc
MACHINEOVERRIDES =. "common-name:"

dann in jedem Rezept Sie es wie folgt verwenden können (zB mit SRC_URI): SRC_URI_common-name = "..."

Dokumente verweisen: http://www.yoctoproject.org/docs/2.3.2/mega-manual/mega-manual.html#var-MACHINEOVERRIDES

Beispiel in poky mit qemuall: https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/conf/machine/include/qemu.inc#n14

+0

Thank you! Eine weitere Frage, in Ihrem Beispiel, 'MACHINEOVERRIDES =. "common-name" ', was bedeutet' '?. –

+1

Nun, das ist nur eine vorbereitende Operation, die auch gut in BitBake docs - http://www.yooctoproject.org/docs/2.3.2/bitbake-user-manual/bitbake-user-manual.html#appending-and- prepending-without-spaces – astor555

+0

Eigentlich habe ich für Raspberry Pi gefunden, sie benutzen die globale Variable 'SOC_FAMILY =" rpi "'. Was ist der Unterschied zwischen ihnen? Welches ist für mich am besten geeignet? –

0

Es gibt eine andere Lösung, die SOC_FAMILY = common-name: ist. Diese Lösung muss include conf/machine/include/soc-family.inc in der Konferenz- oder INC-Datei platzieren.

dann in jedem Rezept Sie können es wie folgt verwenden (zum Beispiel mit SRC_URI): SRC_URI_common-name = "..."