comment installer gcc sur une machine Windows 7?

119

J'ai MinGW sur ma machine Windows 7. Je souhaite installer et utiliser gcc complet pour le compilateur C. J'ai trouvé qu'il n'y avait pas un seul fichier d'installation pré-compilé prêt à l'emploi à cet effet. J'ai vérifié la page suivante: http://gcc.gnu.org/install/ C'est difficile et je trouve cela au-dessus de mon niveau de compréhension. Quelqu'un pourrait-il me fournir des conseils étape par étape avec des liens?

KawaiKx
la source

Réponses:

97

EDIT Depuis pas si récemment, MinGW-w64 a "absorbé" l'un des projets de construction de la chaîne d'outils. Les téléchargements peuvent être trouvés ici . Le programme d'installation devrait fonctionner et vous permettre de choisir une version dont vous avez besoin.

Notez que le SDK Qt est livré avec la même chaîne d'outils. Donc, si vous développez dans Qt et utilisez le SDK, utilisez simplement la chaîne d'outils qui l'accompagne.

Une autre alternative qui a des chaînes d'outils à jour vient de ... harhar ... un développeur Microsoft, nul autre que STL (Stephan T. Lavavej, n'est-ce pas un nom parfait pour le mainteneur de MSVC ++ Standard Library!). Vous pouvez le trouver ici . Il comprend Boost.

Une autre option très utile si vous vous souciez des dépendances prédéfinies est MSYS2 , qui fournit un shell Unix (un fork Cygwin modifié pour mieux fonctionner avec les chemins d'accès Windows et autres), fournit également un GCC. Il est généralement un peu en retard, mais cela est compensé par son bon système de gestion des paquets et sa stabilité. Ils fournissent également un Clang fonctionnel avec libc ++ si vous vous souciez d'une telle chose.

Je laisse ce qui suit pour référence, mais je déconseille fortement d'utiliser MinGW.org, en raison des limitations détaillées ci-dessous. TDM-GCC (la version MinGW-w64) fournit quelques hacks que vous pouvez trouver utiles dans votre situation spécifique, bien que je recommande d'utiliser vanilla GCC à tout moment pour une compatibilité maximale.


GCC pour Windows est actuellement fourni par deux projets. Ils fournissent tous les deux une implémentation très propre du SDK Windows (en-têtes et bibliothèques), ce qui est nécessaire car GCC ne fonctionne pas avec les fichiers Visual Studio.

  1. L'ancien mingw.org, vers lequel @Mat vous a déjà indiqué. Ils fournissent uniquement un compilateur 32 bits. Voir ici pour les téléchargements dont vous avez besoin:

    • Binutils est l'éditeur de liens et le compilateur de ressources, etc.
    • GCC est le compilateur, et est divisé en packages de base et de langage
    • GDB est le débogueur.
    • la bibliothèque d'exécution n'est requise que pour mingw.org
    • Vous devrez peut-être télécharger mingw32-make séparément.
    • Pour obtenir de l'aide, vous pouvez essayer (ne vous attendez pas à des réponses amicales) [email protected]

    Vous pouvez également télécharger mingw-get et l'utiliser.

  2. Le plus récent mingw-w64, qui, comme son nom le prédit, fournit également une variante 64 bits et, espérons-le, un support ARM. Je l'utilise et construit des chaînes d'outils avec leur CRT. Les versions personnelles et automatiques se trouvent sous «Chaînes d'outils ciblant Win32 / 64» ici . Ils fournissent également Linux aux compilateurs croisés Windows. Je vous suggère d'essayer d'abord un build personnel, ils sont plus complets. Essayez le mien (rubenvb) pour GCC 4.6 à 4.8, ou utilisez sezero pour GCC 4.4 et 4.5. Nous fournissons tous les deux des chaînes d'outils natives 32 bits et 64 bits. Ces packages incluent tout ce qui est listé ci-dessus. Je recommande actuellement les builds "MinGW-Builds", car ils sont actuellement sanctionnés comme "builds officiels", et sont livrés avec un installateur (voir ci-dessus).

    Pour obtenir de l'aide, envoyez un e-mail à [email protected] ou postez sur le forum via sourceforge.net.

Les fichiers des deux projets sont répertoriés sur sourceforge, et tout ce que vous avez à faire est d'exécuter le programme d'installation (dans le cas de mingw.org) ou de télécharger un package zippé approprié et de l'extraire (dans le cas de mingw-w64).

Il existe de nombreux constructeurs de chaînes d'outils "non officiels", l'un des plus populaires étant TDM-GCC. Ils peuvent utiliser des correctifs qui cassent la compatibilité binaire avec les chaînes d'outils officielles / non corrigées, alors soyez prudent en les utilisant. Il est préférable d'utiliser les versions officielles.

rubenvb
la source
6
votre réponse semble certainement complète mais je ne comprends pas tout. beaucoup de termes dans votre réponse sont nouveaux pour moi .. Mon intention est d'obtenir le compilateur gcc c, l'éditeur de liens, les fichiers d'en-tête et les fichiers de bibliothèque. J'ai téléchargé votre version personnelle pour GCC 4.6. maintenant que dois-je faire ensuite? veuillez tolérer avec moi :-)
KawaiKx
9
@Saurabh: pas de problème, j'ai essayé d'être correct en termes de mots. Vous extrayez maintenant le package, par exemple vers C:` so that C: \ mingw64 \ bin` (ou C: \ mingw32 \ bin ) contains gcc.exe . Then, open a cmd.exe command prompt, and execute set PATH = C: \ mingw64 \ bin;% PATH% `. Ensuite, vous pourrez appeler mingw32 -make, gcc, gdb, etc. à partir de cette ligne de commande. Les programmes qui l'utilisent (comme cmake, Qt Creator, Codeblocks) en ont également besoin dans PATH. Si vous avez besoin d'un changement de PATH à l'échelle du système / utilisateur, allez dans Panneau de configuration-> Système -> Avancé-> Variables d'environnement, et ajoutez ou modifiez PATH ici.
rubenvb
1
c'est fait. ça marche bien. merci beaucoup .. pourquoi il y a tant de tracas dans l'installation du compilateur gcc sur la machine Windows? n'était-il pas destiné à l'origine à la plate-forme x86?
KawaiKx
4
Il y a au plus 4-5 développeurs concernés par GCC / binutils pour Windows. Ils font un excellent travail, mais laissent à la communauté le soin de fournir leurs outils. Ne vous méprenez pas ici: TDM existe depuis longtemps et fournit un programme d'installation pratique, mais il ne soumet pas de correctifs en amont en raison de problèmes de droits d'auteur. Codeblocks fournit une chaîne d'outils MinGW avec l'EDI, tout comme Qt. Mais aucun d'entre eux ne fournit 64 bits :). Construire GCC lui-même nécessite un environnement Unix, comme Cygwin / MSYS, ou encore mieux: Linux. Le processus de construction n'est pas simple. Mais ce n'est pas très compliqué à installer une fois que vous savez quoi faire.
rubenvb
1
@rubenvb, j'ai remarqué que Mingw64 a maintenant un programme d'installation qui vous permet de choisir des choses. Est-ce une pire idée que d'avoir une construction personnelle?
batbrat
26

Téléchargez mingw-get et émettez simplement:

mingw-get install gcc.

Consultez la page de mise en route .

Tapis
la source
2
cette installation n'installe pas la bibliothèque C standard gcc .. à la place, elle utilise msvcr ***. a. pourquoi ça? est-ce parce que la bibliothèque C standard gcc contient des codes d'objets destinés aux puces non x86?
KawaiKx
3
car le port MinGW de GCC sur Windows utilise la bibliothèque Windows C standard. Si vous souhaitez utiliser une autre bibliothèque C, regardez cygwin (utilise newlib). Pas sûr que vous ayez beaucoup de chance d'obtenir GLIBC sur Windows (je ne vois pas vraiment l'intérêt non plus).
Mat
1
qu'entendez-vous par "port MinGW de GCC sur Windows" exactement? désolé, cela peut sembler stupide mais je suis nouveau dans ces termes ..
KawaiKx
2
Cela signifie la version de GCC produite par MinGW pour s'exécuter sur et cibler les environnements Windows.
Mat
11
  1. Extrayez le package vers C: \ à partir d' ici et installez-le

  2. Copiez le chemin C:\MinGW\binqui contient gcc.exe.

  3. allez dans Control Panel->System->Advanced>Environment variables, et ajoutez ou modifiez PATH. (juste concaténer avec ';')

  4. Ensuite, open a cmd.exe command prompt(Windows + R et tapez cmd, s'il est déjà ouvert, veuillez en fermer et en ouvrir un nouveau pour obtenir le changement de chemin)

  5. changez le dossier en votre chemin de fichier en cd D:\c code Path

  6. type gcc main.c -o helloworld.o. Il compilera le code. pourC++ use g++

7 tapez ./helloworldpour exécuter le programme.

Si zlib1.dll est manquant, téléchargez ici

Vinoj John Hosan
la source
6

Suite à la réponse de Mat (utilisez Cygwin), voici quelques instructions détaillées pour: installer gcc sur Windows Les paquets que vous voulez sont gcc, gdb et make. Le programme d'installation de Cygwin vous permet d'installer des packages supplémentaires si vous en avez besoin.

Michaelok
la source
J'ai installé Cygwin et les packages requis. J'ai également vérifié à partir de la ligne de commande Windows que gcc, gdb et make sont accessibles. Mais l'installation des rails gem échoue toujours avec la même erreur! Quelqu'un a-t-il essayé le Cygwin et les Rails sur Windows avec succès?
Vishal Biyani
De plus, lorsque je lance une gccinvite de commande, l'accès est refusé, je ne sais pas pourquoi
Vishal Biyani
3
De nos jours, j'irais probablement avec quelque chose comme VirtualBox d'Oracle ( virtualbox.org ) ou VMWare au lieu de Cygwin. Ensuite, vous pouvez exécuter les deux systèmes d'exploitation sur la même machine. En ce qui concerne Rails, avez-vous essayé Rails Installer? railsinstaller.org
michaelok
Merci pour le conseil @michaelok, j'essaierai ça à coup sûr
Vishal Biyani
Je ne l'ai pas trouvé non plus, alors je l'ai mis à jour sur la page principale de Cygwin. Ce qui est délicat avec le programme d'installation, c'est de s'assurer que vous sélectionnez les bons packages. D'après les instructions, qui disent ceci à propos de gcc: "Par défaut, setup.exe installera uniquement les packages de la catégorie Base et leurs dépendances, ce qui entraînera une installation minimale de Cygwin. Cependant, cela n'inclura pas de nombreux outils couramment utilisés tels que comme gcc (que vous trouverez dans la catégorie Devel) "
michaelok
1

J'utilise msysgit pour installer gcc sur Windows, il a un bon programme d'installation qui installe presque tout ce dont vous pourriez avoir besoin. La plupart des développeurs auront besoin de plus que le compilateur, par exemple le shell, les outils shell, make, git, svn, etc. msysgit est livré avec tout cela. https://msysgit.github.io/

edit: J'utilise maintenant msys2. Msys2 utilise pacmanArch Linux pour installer des packages et comprend trois environnements pour la création d'applications msys2, d'applications natives 32 bits et d'applications natives 64 bits. (Vous souhaitez probablement créer des applications natives 32 bits.)

https://msys2.github.io/

Vous pouvez également aller au complet et installer code :: blocks ou un autre éditeur d'interface graphique fourni avec un compilateur. Je préfère utiliser vim et make.

Sam Watkins
la source
Est-ce que msysgit fonctionne toujours pour vous? Cette URL redirige vers Git pour Windows où je ne vois aucune mention de gcc. J'ai eu de la malchance avec Git pour Windows, mais c'est peut-être une autre histoire. Il y a aussi le message "msysGit a été remplacé par Git pour Windows 2.x"
Bob Stein
J'utilise maintenant msys2 plutôt que msysgit. msys2.github.io J'ai mis à jour ma réponse.
Sam Watkins