web-dev-qa-db-fra.com

Comment installer MinGW-w64 et MSYS2?

J'essaie de construire une bibliothèque open source. J'ai besoin d'un système de gestion de paquets pour télécharger facilement les dépendances. Au début, j'utilise _MinGW+MSYS_. Mais les forfaits inclus sont limités. Quelqu'un m'a dit d'utiliser _MinGW-w64 + MSYS2_.

J'ai téléchargé le _mingw-w64-install_ de ici . Lors de l'exécution, il signale l'erreur suivante. Comment le réparer?

enter image description here

Et d'ailleurs, depuis la page de téléchargement _MinGW-w64_, je vois beaucoup de liens de téléchargement. Même Cygwin est répertorié. Comment Cygwin et _MinGW-w64_ sont-ils liés?

enter image description here

Ma compréhension actuelle est que, à l'époque de _MinGW+MSYS_, MSYS n'est qu'un complément de Nice à MinGW, alors que dans _MinGW-w64 + MSYS2_, MSYS2 est autonome et que MinGW-w64 n'est qu'un ensemble de bibliothèques avec lequel il peut fonctionner. Tout comme Cygwin peut télécharger de nombreux paquets différents.

78
smwikipedia

Malheureusement, le programme d'installation de MinGW-w64 que vous avez utilisé présente parfois ce problème. Moi-même, je ne suis pas sûr de la raison pour laquelle cela se produit (je pense que cela a quelque chose à voir avec la redirection d'URL Sourceforge ou avec tout ce que l'installateur ne peut actuellement pas gérer correctement).

Quoi qu'il en soit, si vous envisagez déjà d'utiliser MSYS2, vous n'avez pas besoin de ce programme d'installation.

  1. Téléchargez MSYS2 depuis cette page (choisissez 32 ou 64 bits en fonction de la version de Windows sur laquelle vous allez l’utiliser, et non du type de fichiers exécutables que vous souhaitez créer. Les deux versions peuvent générer à la fois 32 et 32. Binaires 64 bits).

  2. Une fois l'installation terminée, cliquez sur l'option "MSYS2 Shell" nouvellement créée sous MSYS2 64-bit ou MSYS2 32-bit dans le menu Démarrer. Mettez à jour MSYS2 selon le wiki (bien que je fasse juste un pacman -Syu, ignorez toutes les erreurs et fermez la fenêtre pour en ouvrir une nouvelle, ceci n'est pas recommandé et vous devriez faire ce que dit la page du wiki).

  3. Installer une chaîne d'outils

    a) pour 32 bits:

    pacman -S mingw-w64-i686-gcc
    

    b) pour 64 bits:

    pacman -S mingw-w64-x86_64-gcc
    
  4. installez les bibliothèques/outils dont vous pourriez avoir besoin. Vous pouvez rechercher les référentiels en faisant

    pacman -Ss name_of_something_i_want_to_install
    

    par exemple.

    pacman -Ss gsl
    

    et installer en utilisant

    pacman -S package_name_of_something_i_want_to_install
    

    par exemple.

    pacman -S mingw-w64-x86_64-gsl
    

    et à partir de là, la bibliothèque GSL est automatiquement trouvée par votre compilateur MinGW-w64 64 bits!

  5. Ouvrez un shell MinGW-w64:

    a) Pour construire des objets 32 bits, ouvrez le "Shell 32 bits MinGW-w64"

    b) Pour créer des objets 64 bits, ouvrez le "shell MinGW-w64 64 bits"

  6. Vérifiez que le compilateur fonctionne en faisant

    gcc -v
    

Si vous souhaitez utiliser les chaînes d'outils (avec les bibliothèques installées) en dehors de l'environnement MSYS2, il vous suffit d'ajouter <MSYS2 root>/mingw32/bin ou <MSYS2 root>/mingw64/bin à votre PATH.

176
rubenvb

MSYS n'a pas été mis à jour depuis longtemps, MSYS2 est plus actif, vous pouvez télécharger depuis MSYS2 , il contient à la fois le package mingw et cygwin fork.

Pour installer la chaîne d’outils MinGW-w64 ( Référence ):

  1. Ouvrez MSYS2 Shell à partir du menu Démarrer
  2. Exécutez pacman -Sy pacman pour mettre à jour la base de données du paquet.
  3. Rouvrez le shell, exécutez pacman -Syu pour mettre à jour la base de données de packages et les packages du système principal.
  4. Rouvrez le shell, exécutez pacman -Su pour mettre à jour le reste
  5. Installer le compilateur:
    • Pour la cible 32 bits, exécutez pacman -S mingw-w64-i686-toolchain
    • Pour la cible 64 bits, exécutez pacman -S mingw-w64-x86_64-toolchain
  6. Sélectionnez le paquet à installer, par défaut, c'est tout
  7. Vous pouvez aussi avoir besoin de make, lancez pacman -S make
24
Steely Wing