Startseite>x86-Programme auf dem RasPi ausführen
Aus Raspberry Pi Geek 10/2018

x86-Programme auf dem RasPi ausführen

© mukhina1, 123RF

Fremdgehen

Bernhard Bablok

Nicht jedes Programm gibt es auch für die ARM-Architektur. Der kommerzielle Emulator Exagear Desktop fungiert als Übersetzer zwischen der ARM- und x86-Welt.

Der Vorteil von Open Source zeigte sich beim Raspberry Pi von Anfang an: Da freie Software üblicherweise auf vielen verschiedenen Plattformen läuft, ließen sich fast alle Debian-Pakete in kürzester Zeit auf das neue System portieren. Hinzu kam dann noch Software, die die speziellen Hardware-Features des Pi ausnutzt.

Proprietäre Software blieb dagegen außen vor, was vor allem Windows-Programme betrifft. Auf anderen Systemen füllen virtuelle Maschinen diese Lücke, auf dem RasPi funktioniert das nur schlecht: Zu unterschiedlich fallen die Befehlssätze der Prozessoren aus, die Umsetzung in Software kostet einfach zu viel Performance. Deshalb geht die Firma Eltechs mit ihrem Produkt Exagear Desktop einen etwas anderen Weg.

Installation

Für ein proprietäres Programm gelingen der Download und die Installation extrem leicht [1]: Exagear findet sich in den Paketquellen von Raspbian. Sie installieren es also bequem per Paketverwaltung und starten dann den Emulator (Listing 1).

Listing 1

 

$ sudo apt update
$ sudo apt install exagear-desktop
$ exagear
Starting /bin/bash  in the guest image /opt/exagear/images/debian-8

Mit dem letzten Kommando aus Listing 1 wechseln Sie schon in die x86-Umgebung. Beim ersten Aufruf erscheint ein Formular, das Namen und E-Mail-Adresse abfragt (Abbildung 1). Die Testversion lässt sich dann 72 Stunden in vollem Umfang nutzen. Die Lizenz ist an die Seriennummer der CPU gebunden – damit verhindert der Hersteller, dass man einfach bei Bedarf eine Neuinstallation vornimmt.

Abbildung 1: Als Testversion lässt sich Exagear auch ohne kostenpflichtige Lizenz drei Tage lang in vollem Umfang nutzen.

Abbildung 1: Als Testversion lässt sich Exagear auch ohne kostenpflichtige Lizenz drei Tage lang in vollem Umfang nutzen.

Mit einer echten Lizenz, die je nach Version und Angebot zwischen 11 und 41 Euro kostet [2], ist das Vorgehen etwas anders (siehe Kasten “Versionen”). Hier laden Sie einen für das verwendete RasPi-Modell spezifischen Tarball herunter und entpacken ihn in demselben Verzeichnis wie die Lizenzdatei. Anschließend starten Sie das Installationskommando (Listing 2). Für diesen Artikel stellte Eltechs freundlicherweise eine entsprechende Lizenz bereit.

Listing 2

 

$ wget http://downloads.eltechs.com/exagear-desktop-v-2-2/exagear-desktop-rpi3.tar.gz
$ tar -xvzpf exagear-desktop-v-2-2/exagear-desktop-rpi3.tar.gz
$ sudo ./install-exagear.sh

Der Tarball enthält im Wesentlichen eine Reihe von DEB-Paketen mit Gastsystemen, aus denen das Installationsskript dann die am besten passende Alternative für die Installation auswählt. Außerdem prüft es die Lizenz und aktiviert das Programm.

Versionen

Exagear Desktop kostet je nach Plattform und Funktionsumfang zwischen 11,95 Euro (Basisversion für Pi Zero, RasPi 1) und 40,95 Euro für die RasPi-3-taugliche Enterprise-Variante. Allerdings gibt es immer wieder Sonderangebote, so zum Beispiel zum Auftakt der Fußball-WM 2018, als es zwei Lizenzen zum Preis von einer gab.

Neben der Ausrichtung auf ein bestimmtes RasPi-Modell unterscheiden sich die Versionen auch in der Flexibilität und beim Support. Die Basisversion ist an ein spezifisches Gerät gebunden – brennt der RasPi durch, geht auch die Lizenz verloren. Die Pro-Version dagegen erlaubt, die Lizenz auf ein anderes Gerät derselben Klasse zu übertragen. Für den RasPi 3 liegt der entsprechende Preissprung besonders hoch: Die Basisversion kostet 23,95 Euro, die Pro-Version 12 Euro mehr. Die Enterprise-Version erlaubt den Einsatz in Firmen, bietet besseren Support und vereinfacht die Installation über Volumen-Lizenzen.

Die billigste Lizenz (RasPi 0/1) eignet sich nur bedingt für den Allgemeingebrauch. Viele Programme scheitern schon nativ an den geringen Ressourcen der ersten RasPi-Generation, und der Emulator zwackt davon noch seinen Teil ab. Für spezielle Programme kann die Kombination aus Pi Zero und Exagear jedoch eine sinnvolle Alternative zu einem abgestaubten Win-XP-PC sein, der nur noch läuft, weil es für die heiß geliebte alte Laborsoftware keinen moderneren Ersatz gibt.

Erste Schritte

Nach dem Start der Exagear-Umgebung mit dem Kommando exagear passiert erst mal außer einer Begrüßungsmeldung nichts. Die Ausgaben der Kommandos uname -a und cat /etc/os-release (Abbildung 2) zeigen aber, dass das System nun – bei identischer Kernel-Version – unter einer x86- statt einer armv7l-Architektur läuft. Mit dem Befehl exit verlassen Sie die x86-Umgebung wieder.

Abbildung 2: Bei genauem Hinschauen weist sich das System nach dem Start von Exagear als x86-Umgebung aus.

Abbildung 2: Bei genauem Hinschauen weist sich das System nach dem Start von Exagear als x86-Umgebung aus.

Den Umweg über den Befehlexagear können Sie sich für installierte x86-Programme später sparen, da der Kernel das entsprechende Binärformat erkennt und den Wrapper automatisch startet. Freilich ist das nicht automatisch so, sondern vom Exagear-Installer so eingerichtet.

Mit der Installation von Exagear landet eine minimale Debian-“Jessie”-Distribution auf dem System. Im Gegensatz zu echten Emulatoren oder virtuellen Maschinen nutzt die x86-Umgebung dabei die Umgebung des Hostsystems mit – zur sauberen Abschottung von Programmen eignet sich Exagear daher explizit nicht.

Das “Jessie”-Dateisystem liegt unterhalb von /opt/exagear/images/debian-8/. Vom normalen Raspbian-System aus greifen Sie ohne Probleme auf die dort hinterlegten Daten zu. Umgekehrt klappt der Zugriff auf die Home-Verzeichnisse des Wirtssystems: Exagear bindet sowohl /home/ als auch /dev/ ein.

Benötigen Sie Zugriff auf das komplette Wirtssystem, hängen Sie die ursprüngliche Root-Partition einfach noch einmal vollständig ein (Listing 3). Danach sieht das Gastsystem unterhalb von /wirt das komplette Dateisystems des Hosts – inwieweit das sinnvoll ist, sei einmal dahingestellt.

Listing 3

 

$ sudo mkdir /opt/exagear/images/debian-8/wirt
$ sudo mount /dev/mmcblk0p2 /opt/exagear/images/debian-8/wirt
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 5 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
€0,99 – Kaufen
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland