Tutoriel MSYS2

Ce tutoriel concerne l'étude du logiciel MSYS2.

Ce logiciel permet d'émuler un environnement Linux dans le système d'exploitation Windows.
C'est donc très pratique pour déployer un logiciel qui a été créé à partir de l'environnement de Linux pour la plateforme Windows.

Dans ce tutoriel, je vais vous présenter :

  • L'installation de MSYS2
  • Les commandes principales pour la mise à jour, l'installation et la suppression des paquets
  • Le paramétrage de MSYS2 dans l'environnement Windows
  • Le déploiement d'un logiciel, créé sous Linux, pour la plateforme Windows
    1. Installation de MSYS2

      Pour installer le logiciel d'émulation MSYS2, il suffit d'aller sur la page du projet : Installeur MSYS2
      Selon votre environnement, vous téléchargez la version 64 (msys2-x86_64*) ou 32 (msys2-i686*) bits.
      Double cliquez sur le fichier téléchargé et gardez le paramétrage d'installation en cliquant sur "Suivant"
      Apparaissent trois nouveaux menus dans la barre des applications :

      • MSYS2 MSYS : cette entrée servira pour la mise à jour des paquets
      • MSYS2 MinGW 32-bits : cette entrée servira pour la création d'applications 32 bits
      • MSYS2 MinGW 64-bits : cette entrée servira pour la création d'applications 64 bits

      Pour finir l'installation, nous allons mettre à jour le système de paquet :

      pacman -Syu
      Avec cette commande, tous les paquets installés vont être mis à jour
      Il se peut que la première installation n'aboutisse pas.
      Relancer le terminal et la commande de mise à jour des paquets.

    2. Commandes principales de MSYS2
    3. Pacman est le gestionnaire de paquets de la distribution Archlinux et ses dérivées.
      Il est le pendant d'apt de Debian ou yum ou dnf pour Fedora
      Donc la première commande que vous avez vu est la mise à jour des paquets installés
      La deuxième est pour installer un paquet, par exemple pour installer Emacs :

      pacman -S emacs
      Cette commande va rechercher un paquet dans les dépôts :
      pacman -Ss vim
      Pour supprimer un paquet, vous pouvez utiliser cette commande :
      pacman -R vim
      La liste des commandes de pacman peut être trouvée sur cette page : Commandes Pacman
      Pour connaître les correspondances avec les commandes de votre gestionnaire de paquets favori, vous pouvez consulter cette page : Correspondances des commandes

    4. Paramétrage de MSYS2
    5. Pour pouvoir compiler et utiliser les ressources de développement, il faut installer quelques paquets de base :

      pacman -S git base-devel mingw-w64-i686-gtk3 mingw-w64-x86_64-gtk3 mingw-w64-i686-gcc mingw-w64-x86_64-gcc
      Puis aller boire un café...................... ça y est l'environnement est prêt
      Pour pouvoir lancer les programmes compilés, il faut mettre à jour la variable d'environnement PATH
      Pour se faire, sur Windows 10, il faut faire une recherche de PATH dans la barre du bas et ouvrir la fenêtre "Modifier les variables d'environnement"
      Cliquer sur le bouton "Variable d'environnement", choisir la ligne "Path" et cliquer sur "Modifier"
      Cliquer sur "Nouveau" puis "Parcourir" et rechercher le dossier C:\msys64\mingw64\bin et Valider
      Faire de même pour le 32 bits puis valider l'ensemble
      C'est fini, votre environnement est prêt

    6. Déploiement de Galculator pour l'environnement Windows
    7. La première compilation concernera l'environnement 64 bits.
      Donc, il faut lancer le terminal 64 bits via le menu MSYS2 MinGW 64-bits
      Tout d'abord, récupérer les sources de Galculator :

      git clone https://github.com/galculator/galculator.git
      Accéder au dossier galculator par
      cd galculator
      Puis lancer la commande pour configurer automatiquement
      autoreconf -vfi
      Créer un dossier ou votre projet deployer sera stocké, par exemple deploiement :
      mkdir deploiement
      Lancer ./configure avec le chemin du dossier de deploiement (remplacer xxxx par votre nom d'utilisateur)
      ./configure --prefix=/home/xxxx/galculator/deploiement
      Pour faire fonctionner l'exécutable directement dans Windows, il faut respecter les chemins des dossiers. Comme ceci, par exemple :
      ./configure --prefix=C:/msys64/home/xxxx/galculator/deploiement
      Sinon les chemins indiqués dans les codes sources du programme ne fonctionneront pas.
      Puis fabriquer les fichiers à déployer
      make
      Puis installer les fichiers dans le dossier deploiement
      make install
      Vos fichiers sont prêts dans le dossier déploiement
      Vous pouvez lancer l'exécutable, dans le dossier bin, et vous rendre compte que tout fonctionne. Il est même traduit
      Pour pouvoir le fournir à d'autres personnes, il faudra également que les dll nécessaires au bon fonctionnement du logiciel soient présentes dans le dossier bin
      Pour inventorier rapidement ces dll, il suffit de lancer depuis le dossier bin de galculator
      ldd ./galculator | grep mingw | sort
      Allez chercher ces dll manquantes et copiez les dans ce dossier bin

      Vous pouvez faire la même chose pour un exécutable 32 bits en lançant le terminal 32 bits

    8. Conclusion
    9. La mise en place de l'environnement est un peu longue mais le résultat est au rendez-vous.
      Les points positifs sont :


      Le petit point négatif est le manque de réactivité et de souplesse du terminal proposé