HowTo: Poky-Linux (mit RT-Unterstützung) mit Yocto für das BeagleBone Black bauen Autor: Michael Schäferling Datum: 2015-03-19 Allgemeiner Hinweis: Es wird empfohlen vor dem Bauen des Yocto/Poky-Linux auf dem Entwicklungsrechner eine Screen-Session (screen) zu starten. Damit kann die Verbindung zur Sitzung jederzeit getrennt ("Ctrl-a; d") und wieder darauf verbunden werden (screen -r). Dies ist auch hilfreich wenn auf dem Entwicklungsrechner remote gearbeitet wird und die Netzverbindung abbricht - es kann einfach wieder auf die Screen-Session verbunden werden. 1. Einfaches RT-Linux bauen: > Yocto/Poky holen: git clone -b dizzy git://git.yoctoproject.org/poky.git yocto-poky > Projekt-Verzeichnis erstellen (default: "build"; oder den Namen als Argument mitgeben): cd yocto-poky . oe-init-build-env (wechselt automatisch ins neue Projektverzeichnis) > Projekt-spezifische Änderungen vornehmen (z.B. Wahl des Boards, Auswahl von Paketen, Echtzeit-Fähigkeit, ...): In "conf/local.conf": --- -> Board-Wahl: (Kommentar entfernen) MACHINE ?= "beaglebone" --- -> Pakete und Paket-Verwaltung: PACKAGE_CLASSES ?= "package_deb" IMAGE_FEATURES += " package-management" EXTRA_IMAGE_FEATURES += " tools-sdk" EXTRA_IMAGE_FEATURES += " tools-debug" EXTRA_IMAGE_FEATURES += " dev-pkgs" --- -> Für RT-Kernel: PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-rt" COMPATIBLE_MACHINE_beaglebone = "beaglebone" COMPATIBLE_MACHINE_quilt-native = "beaglebone" --- > Einfaches RT-System bauen (Dauer: ca. 3 Stunden auf Intel Core-i3-540): bitbake core-image-rt -> Ergebnis in "tmp/deploy/images/beaglebone/" 2. Erweitern der Paketliste und Konfiguration mit 'hob' > Um Pakete graphisch auszuwählen: 'hob' benutzen (löst auch Abhängigkeiten auf): hob -> Machine: beaglebone -> Select an image recipe: core-image-rt -> Advanced configuration: nur mal reinschauen, hier sind Einstellungen aus "conf/local.conf" enthalten. -> -> Neue Gruppen (in 'Package Groups') aktivieren: packagegroup-core-device-devel; packagegroup-core-ssh-openssh -> -> -> -> Name, wie z.B. "core-image-rt-bbb-net-dev" und passende Beschreibung vergeben. -> 'hob' schließen. > Das Rezept (mit Namen, Beschreibung und neuer Paketauswahl) kann hier gefunden werden: recipes/images/custom/core-image-rt-bbb-net-dev.bb > Das System bauen: bitbake core-image-rt-bbb-net-dev > Falls beim Bauen merkwürdige Fehlermeldungen auftreten sollten -> alles in "tmp/" löschen: rm -rf tmp/* Wenn alles fertig gebaut ist: -> Den Kernel und das FS auf's Board bringen: -> SD-Karte: siehe [http://android.serverbox.ch/?p=1273] -> Deploying -> Netzwerk: siehe [bbb_tftp-nfs-boot.txt]