Unfreiwillig im Linux-Dschungel

Auf der SD-Karte ist dafür genügend Platz, und auch wenn sich ein Single-Core-Prozessor mit 400 MHz nicht gerade für eine Kernel-Kompilierung empfiehlt, für kleine Programme und Module langt es - hat es zur Jahrtausendwende schließlich auch.

Stellenmarkt
  1. Referent IT (m/w/d)
    Mainova AG, Frankfurt am Main
  2. IT Systems Engineer/IT User HelpDesk/IT-Support (m/w/d)
    Alpla-Werke Lehner GmbH & Co KG, Markdorf
Detailsuche

Nur: Wie bekommen wir diese Werkzeuge auf die SD-Karte? Die Intel-Dokumentation verliert kein Wort zum Thema Package Manager. Das hat einen einfachen Grund: Keiner der bekannten Package Manager wie rpm oder apt-get ist installiert. Und das ist nicht etwa ein Fehler, sondern quasi ein "Feature".

Intel verwendet Yocto als Distribution. Dabei handelt es sich um eine spezielle Distribution für Embedded-Systeme mit dazugehörigen Build-Werkzeugen für einen Host-Rechner. Sie zeichnet sich durch einen geringen Platz- und Speicherbedarf aus. Das Yocto-Linux passt problemlos in den 8 MByte großen Flash-Speicher des Boards, lässt aber noch Platz für die Arduino-Funktionalität.

Das Yocto-Konzept funktioniert als solches gut für fertige Embedded-Boards, die auf ihren endgültigen Einsatz warten. Nur leider vermarktet Intel das Galileo-Board als Entwicklerplattform.

Golem Akademie
  1. Cloud Transformation Roadmap: Strategien, Roadmap, Governance: virtueller Zwei-Tage-Workshop
    7.–8. März 2022, Virtuell
  2. Linux-Shellprogrammierung: virtueller Vier-Tage-Workshop
    8.–11. März 2022, Virtuell
Weitere IT-Trainings

Und Intel sieht dieses Linux auch für "Fat"-Installation auf der SD-Speicherkarte vor, obwohl der verfügbare Platz dort ein geringeres Problem ist. Konzeptbedingt ist eine Yocto-Installation nur aufwendig an die eigenen Wünsche anzupassen und erfordert einen nicht zu unterschätzenden Lernaufwand.

Wer Yocto um zusätzliche Programmpakete, wie zum Beispiel Vim, aber eben auch Entwicklerwerkzeuge ergänzen will, kommt um die Erstellung eines eigenen Images oder ein Cross-Compiling auf Basis eines Board Support Packages (BSP) für Yocto nicht herum. Und dieser Vorgang erfordert einiges an Aufwand.

Zuerst brauchen wir eine Linux-Installation als Host, mindestens 70 GByte freier Festplattenspeicher sind Pflicht, minimal 2 GB RAM empfehlenswert und Prozessorpower sowieso. Die erforderlichen Software-Packages und eine Bauanleitung hat Intel in einer Build-Anleitung aufgelistet. Zusätzlich empfiehlt sich ein ausführlicher Blick in einen Blogeintrag von Sergey Kiselev.

Wer den Anweisungen folgt, erhält ein Build-Verzeichnis mit dem sehr langen Namen Board_Support_Package_Sources_for_Intel_Quark_v0.7.5, dieser sollte vor allen weiteren Schritten gekürzt werden, zum Beispiel in "bsp". Denn bei uns bricht im weiteren Verlauf eine Kompilierung wegen eines zu langen Kommandozeilenaufrufes ab.

Was in beiden Anleitungen untergeht: setup.sh muss mit dem Parameter -e layer aufgerufen werden. Ansonsten läuft das generierte Image mangels spezifischer Treiber und Einstellungen nicht auf dem Galileo-Board.

Außerdem empfiehlt es sich, in der Datei conf/local.conf die Werte in den Einträgen BB_NUMBER_THREADS und PARALLEL_MAKE mindestens zu verdoppeln, wenn die Generierung auf einem halbwegs aktuellen Prozessor läuft.

Jetzt kann die eigentliche Image-Generierung beginnen. Und wir legen uns erst einmal schlafen - nein, doch lieber nicht. Denn die Generierung des "Fat"-Linux dauert zwar lang: um die 4 Stunden auch bei aktueller Hardware und guter Internetanbindung. Aber die Wahrscheinlichkeit ist relativ groß, dass der Prozess zwischendurch abbricht. Häufigster Fehler ist, dass ein Quellcode-Paket nicht heruntergeladen werden kann, weil der Downloadserver nicht schnell genug reagiert. Bei wenig RAM und zu vielen Kompilierungstasks gleichzeitig sind auch seltsame Compiler-Abbrüche möglich. In beiden Fällen ist die Lösung einfach, die Generierung neu zu starten. Zum Glück sind frühere Downloads und Kompilate gecacht.

Das generierte Image entspricht nun genau dem, das wir von Intel heruntergeladen haben. Gleichzeitig haben wir die notwendige Umgebung, um das Image um weitere Programme zu ergänzen. Dazu ist es aber notwendig, ein "Rezept" (Recipe) zu schreiben - und ja, das ist ebenfalls ein Stück Arbeit. In diesem Rahmen kann der Package Manager des Hostcomputers zum Einsatz kommen. Die Yocto-Werkzeuge kümmern sich um die Cross-Kompilierung.

Leider behebt der Selbstbau der Distribution keinen der obigen Fehler. Auch eine neuere Version 0.8.0 des BSP, auf die wir zufällig stoßen, hilft nicht: Die Image-Erstellung scheitert.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Und weitere FehlerAm Ende doch Erfolg 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9.  


Nikolaus Busch 15. Feb 2014

In der letzten Woche ist mein Galileo-Board angekommen. Die Inbetriebnahme verlief anders...

gehtDichNichtsAn 21. Dez 2013

warum auch einfach, wenns kompliziert geht. es gibt in der it nichts schlimmeres als...

morob65 11. Dez 2013

ich verwende rpi selber, inzwischen 4 stück für die verschiedenen anwendungen, aber die...

DeaD_EyE 10. Dez 2013

Lies den verdammten Artikel und nerv uns nicht! Das du nicht viel von IT verstehst...

elgooG 10. Dez 2013

Ja, das ausgerechnet Intel so etwas passiert lässt das Ganze mehr als Werbekampagne für...



Aktuell auf der Startseite von Golem.de
Framework Laptop im Hardware-Test
Schrauber aller Länder, vereinigt euch!

Der modulare Framework Laptop ist ein wahrgewordener Basteltraum. Und unsere Begeisterung für das, was damit alles möglich ist, lässt sich nur schwer bändigen.
Ein Test von Oliver Nickel und Sebastian Grüner

Framework Laptop im Hardware-Test: Schrauber aller Länder, vereinigt euch!
Artikel
  1. FTTH: Liberty Network startet noch mal in Deutschland
    FTTH
    Liberty Network startet noch mal in Deutschland

    Das erste FTTH-Projekt ist gescheitert. Jetzt wandert Liberty von Brandenburg nach Bayern an den Starnberger See.

  2. 5.000 Dollar Belohnung: Elon Musk wollte Twitter-Konto von 19-Jährigem stilllegen
    5.000 Dollar Belohnung
    Elon Musk wollte Twitter-Konto von 19-Jährigem stilllegen

    Tesla-Chef Elon Musk bot einem US-Teenager jüngst angeblich 5.000 US-Dollar, damit der seinen auf Twitter betriebenen Flight-Tracker einstellt.

  3. Let's Encrypt: Was Admins heute tun müssen
    Let's Encrypt
    Was Admins heute tun müssen

    Heute um 17 Uhr werden bei Let's Encrypt Zertifikate zurückgezogen. Wir beschreiben, wie Admins prüfen können, ob sie betroffen sind.
    Eine Anleitung von Hanno Böck

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RTX 3080 12GB 1.499€ • iPhone 13 Pro 512GB 1.349€ • DXRacer Gaming-Stuhl 159€ • LG OLED 55 Zoll 1.149€ • PS5 Digital mit o2-Vertrag bestellbar • Prime-Filme für je 0,99€ leihen • One Plus Nord 2 335€ • Intel i7 3,6Ghz 399€ • Alternate: u.a. Sennheiser Gaming-Headset 169,90€ [Werbung]
    •  /