Faire fonctionner une application Windows x86 sur un Raspberry Pi


Le Raspberry Pi est un ordinateur monocarte à processeur ARM, de la taille d'une boite d'allumettes, conçu en 2012 par la fondation Rasberry Pi. Cet ordinateur fonctionne parfaitement avec le système d'exploitation gratuit Raspbian (variante de Linux optimisée pour le Raspberry Pi). Le modèle 3 du Raspberry Pi (Raspberry Pi 3) possède la connectivité Wifi et permet de se connecter facilement sur internet. Une fois connecté à une imprimante, il répond à l'essentiel des besoins de la majorité des utilisateurs.

Certains utilisateurs souhaitent faire tourner sur un Raspberry Pi des programmes qui existent en environnement Windows 32bits mais qui n'existent pas en environnement Linux. Le logiciel libre Wine permet d'exécuter de tels programme dans un environnement Linux. Contrairement au logiciel Qemu, Wine n'est pas un émulateur, il n'a donc pas besoin du système d'exploitation Windows pour fonctionner. Il existe cependant une difficulté; le logiciel Wine fonctionne correctement avec une distribution Linux classique (installée sur un PC doté d'une architecture de type i386) mais il ne fonctionne malheureusement pas avec un Rasberry Pi doté de la distribution Raspbian et d'une architecture de type ARM.

Le logiciel "ExaGear Desktop" de Eltechs permet de solutionner ce problème. "ExaGear Desktop" est une machine virtuelle qui permet permet de faire tourner simultanément, sur un Raspberry Pi, des applications Intel x86 (32bits) et des applications natives ARM. "ExaGear Desktop" est un logiciel payant (le coût d'une licence est d'environ 25 euros) mais il fonctionne de façon beaucoup plus rapide que le logiciel gratuit équivalent Qemu. Une fois la machine virtuelle "ExaGear Desktop" installée, on peut exécuter des applications Windows en utilisant le logiciel "Wine" au dessus de "ExaGear Desktop".

Le schéma suivant montre comment s'articulent ces différents éléments.

1

Dans ce qui suit, on installe le logiciel "Exagear Desktop" et le logiciel "Wine" sur un Raspberry Pi3 afin de faire fonctionner une ancienne application Windows x86 (par exemple ici, la version 2.1 du logiciel Wenlin - logiciel d'apprentissage du chinois dont le CDs et les droits d'utilisation ont été achetés en 1999 et qui fonctionnait avec Windows 95). L'ensemble de cette opération peut se décomposer en 5 étapes.

1) Récupérer "ExaGear Desktop"

Une fois la licence de logiciel payée, Eltechs fait parvenir au client (par mail) les liens vers les deux fichiers suivants qui sont nécessaires pour pouvoir installer ExaGear Desktop sur le Raspberry Pi3 :
• le fichier "exagear-desktop-rpi3.tar.gz" qui contient le logiciel;
• un fichier pk-000...xxx.key qui contient la licence d'utilisation du logiciel.
Il faut commencer par copier ces deux fichiers dans le répertoire "Home/Pi/Downloads" du Raspberry Pi3.

2

2) Installer ExaGear Desktop

On ouvre le Terminal de commandes et, à l'aide de la commande suivante, on se place dans le répertoire "Home/Pi/Downloads" du Raspberry Pi3, où se trouve les deux fichiers pré-cités.
$ cd ~/Downloads/

On peut alors vérifier, à l'aide de la commande "pwd", que le répertoire courant est bien désormais "Home/Pi/Downloads"

3

Ensuite on décompacte, à l'aide de la commande suivante, le fichier "exagear-desktop-rpi3.tar.gz" qui est un fichier compacté.
$ tar -xvzpf exagear-desktop-rpi3.tar.gz
Cette opération génère plusieurs fichiers (à l'intérieur du répertoire "Home/Pi/Downloads") dont le fichier "install-exagear.sh".

4

Enfin on installe et on active "ExaGear Desktop" en exécutant, à l'aide de la commande suivante, le script "install-exagear.sh" qui se trouve dans le répertoire "Home/Pi/Downloads".
$ sudo ./install-exagear.sh

5

L'installation de "ExaGear Desktop" s'effectue alors automatiquement.

6

À la fin de l'installation, si tout s'est bien passé, un message "Exagear is activated" s'affiche.

7

On ferme le terminal de commande.

3) Démarrer Exagear

Pour entrer dans le système client x86, on ouvre le Terminal de commande et on saisit la commande suivante qui démarre Exagear.
$ exagear
Un message "starting in the guest image" s'affiche indiquant que le système client Exagear est désormais actif.

8

Il est conseillé de mettre à jour l'ensemble des paquets, à l'aide de la commande suivante, lorsqu'on entre dans le système client x86 pour la première fois.
$ sudo apt-get update

9

4) Installer Wine

On installe maintenant Wine depuis le référentiel apt-get (apt-get repositories), à l'aide de la commande suivante.
$ sudo apt-get install wine

10

L'opération se déroule automatiquement. Un message nous informe que l'installation va occuper environ 500 Mo d'expace disque. On tape Y(es).

11

Un message peut ensuite nous demander de confirmer le remplacement automatique du fichier "client.conf" existant par un nouveau fichier "client.conf". Dans ce cas, si on est d'accord, on tape Y(es). Au bout d'environ 20 minutes, l'installation de Wine se termine.

12

5) Installer et exécuter une application Windows

On commence par copier notre exécutable Windows x86, ainsi que ses répertoires et fichiers associés, dans un répertoire bien identifié du Raspberry Pi3 (le répertoire "Home/pi/w" par exemple).
Ensuite on ouvre le terminal de commandes et on démarre "Exagear" à l'aide de la commande suivante.
$ exagear

On démarre Wine et on exécute notre application Windows (installée dans le répertoire "Home/pi/w") l'aide de la commande "wine nomapplication.exe".

13

Si nécessaire on met à jour "wine", en cliquant le bouton "Install".

14

Une fois la mise à jour de "Wine" terminée, notre application Windows x86 s'exécute normalement sur le Raspberry Pi 3.

15

Après avoir refermé la fenêtre de l'application Windows, on termine la session Exagear en saisissant la commande $ exit

16