web-dev-qa-db-fra.com

Comment compiler le programme C en ligne de commande avec MinGW?

Quelle commande doit-on entrer à la ligne de commande dans Windows 7 pour compiler un programme C de base?

Comme si je me demandais littéralement ce que vous tapez dans la commande Invite, pour compiler un fichier .c.

J'ai essayé:

> gcc foo.c

Mais il dit: 

'gcc' is not recognized as an internal or external command, 
 operable program or batch file.

J'ai aussi essayé:

> minGW foo.c

Mais je suis rentré: 

 'minGW' is not recognized as an internal or external command, 
  operable program or batch file.

J'ai une variable d'environnement de chemin définie sur l'endroit où MinGW est installé:

C:\Program Files (x86)\CodeBlocks\MinGW\bin

Je ne trouve pas vraiment d'informations sur mes erreurs et ne trouve rien dans la documentation officielle de MinGW, car il semble que ce soit quelque chose d'aussi simple, de question embarrassante, que les gens sachent quoi faire?

Cela indique qu'il n'a pas pu trouver gcc.exe.

J'ai une variable d'environnement de chemin définie sur l'endroit où MinGW est installé

Peut-être que vous n'avez pas défini le chemin correctement?

echo %path%

montre le chemin vers gcc.exe? Sinon, la compilation est similaire à Unix:

gcc filename.c -o filename
16
P.P.

J'ai eu ce problème et je ne trouvais pas pourquoi cela continuait. La raison est simple: une fois que vous avez configuré les chemins d’environnement, vous devez fermer la fenêtre CMD et la rouvrir pour qu’elle soit consciente des nouveaux chemins d’environnement.

8
Herz3h

Il suffit de définir la variable d’environnement sur le chemin EXACT vers gcc.exe comme suit:

C:\Program Files (x86)\CodeBlocks\MinGW\bin\gcc.exe
2
mak

Premier:

Ajoutez le répertoire de dossier de votre minGW (ex: C\mingw64\bin) dans Variables système => Chemin exemple visuel


Compiler:

.c: gcc nomfichier.c -o désir

.cpp: g ++ nom_fichier.cpp -o désir


Courir: 

désir/ou ./desire

1
AharrFaris

Vous pouvez inclure de manière permanente le répertoire du fichier MinGW en cliquant sur Poste de travail, Propriétés, Paramètres système avancés, Variables d’environnement, puis éditer et coller votre répertoire.

1
filmon

J'ai eu le même problème avec les fichiers .c qui contenaient des fonctions (pas main() de mon programme). Par exemple, mes fichiers d'en-tête étaient "fact.h" et "fact.c", et mon programme principal était "main.c", mes commandes étaient ainsi:

E:\proj> gcc -c fact.c

Maintenant, j'avais un fichier objet de fact.c (fact.o). après ça:

E:\proj>gcc -o prog.exe fact.o main.c

Ensuite, mon programme (prog.exe) était prêt à être utilisé et fonctionnait correctement. Je pense que -c après gcc était important, car il permet de créer des fichiers objets pouvant être attachés pour créer le programme dont nous avons besoin. Sans utiliser -c, gcc lie pour trouver le principal dans votre programme et quand il ne le trouve pas, il vous donne cette erreur.

1
S.Ma.Gh

J'ai rencontré le même message d'erreur après avoir décompressé les archives MinGW en C:\MinGW et défini le chemin d'accès à la variable d'environnement en tant que C:\MinGW\bin;.

Lorsque j'essaie de compiler, j'obtiens cette erreur!

gcc: erreur: CreateProcess: aucun fichier ou répertoire de ce type

J'ai finalement compris que certaines des archives téléchargées avaient été rapportées comme cassées en les décompressant en C:\MinGW (mais que j'avais ignoré au départ). Une fois que j'ai supprimé les fichiers cassés et re-téléchargé à nouveau toutes les archives à partir de SourceForge, que je les ai décompressées vers C:\MinGW, l’erreur a disparu et le compilateur a bien fonctionné et a généré le hello.exe souhaité.

J'ai couru ceci: 

gcc hello.c -o hello

Le résultat est le suivant (un soulignement clignotant):

_

1
Kunle

Une fois, j’ai eu ce genre de problème pour installer MinGW sous Windows, même après avoir ajouté le correctif System PATH dans mes variables d’environnement.

Après des jours de misère, je suis finalement tombé sur un fil qui recommandait de désinstaller le compilateur MinGW d'origine, de supprimer le dossier C:\MinGW et d'installer le compilateur TDM-GCC MinGW disponible ici .

Vous avez le choix entre un programme d’installation 64/32 bits à partir de la page de téléchargement, qui crée également les variables de chemin d’environnement. 

0
Feyisayo Sonubi

Si vous avez collé votre texte dans la variable de chemin d'accès et ajouté un espace avant le point-virgule, vous devez le supprimer et ajouter une barre oblique inverse à la fin du répertoire (; C:\Program Files (x86)\CodeBlocks\MinGW\bin

0
Kai Steffes

make comme d'habitude ... Assurez-vous de l'avoir dans votre chemin et corrigez Makefile

0
m0skit0

Au lieu de définir le %PATH%, vous pouvez entrer votre shell msys . Dans msys et mingw standard, gcc est dans chemin, vous pouvez donc exécuter gcc ou which gcc.

J'ai un fichier batch sh.bat sur Windows 7, dans% PATH%:

C:\lang\msys\bin\sh.exe --login %*

Chaque fois que je veux utiliser gcc, j'entre cmd, puis sh, puis gcc. Je trouve cela très pratique.

Lorsque vous travaillez avec un logiciel sous Linux, évitez les répertoires espacés tels que Program Files. Installez-les plutôt pour Program_Files. Il en va de même pour les outils que vous souhaiterez peut-être exécuter à partir de l'environnement msys.

0
Jarekczek

Je suis assez en retard pour répondre à cette question (5 ans pour être exact) mais j'espère que cela aidera quelqu'un. 

Je soupçonne que cette erreur est due aux variables d'environnement au lieu de GCC. Lorsque vous définissez une nouvelle variable d'environnement, vous devez ouvrir une nouvelle invite de commande! Ceci est le problème 90% du temps (quand j'ai téléchargé GCC pour la première fois, cela me tenait pendant 3 heures!) Si ce n'est pas le cas, vous n'avez probablement pas défini correctement les variables d'environnement ou vous vous trouvez dans un dossier avec espaces dans le nom.

Une fois que GCC fonctionne, il peut être fastidieux de le compiler et de le supprimer à chaque fois. Si vous ne voulez pas installer une idée complète et que python est déjà installé, essayez ce projet github: https://github.com/sophiadm/notepad-is-effort C'est un petit IDE écrit avec tkinter en python. Vous pouvez simplement copier le code source et l'enregistrer en tant que fichier .py

0
dwmyfriend

Dans Windows 10, des étapes similaires peuvent être suivies dans d'autres versions de Windows.

Faites un clic droit sur "Poste de travail", sélectionnez Propriétés, Allez à Paramètres système avancés -> Avancé -> Sélectionnez "Variables d’environnement ..".

Trouvez "Chemin", sélectionnez-le et choisissez l'option de modification -> Cliquez sur Nouveau et ajoutez "C:\MinGW\bin" (ou l'emplacement de gcc.exe, si vous l'avez installé à un autre emplacement) -> Enregistrer et redémarrer la commande Invite . Gcc devrait fonctionner.

0
Mayur Naravani

Où est votre gcc?

Ma gcc est dans "C:\Program Files\CodeBlocks\MinGW\bin \".

"C:\Program Files\CodeBlocks\MinGW\bin\gcc" -c "foo.c"
"C:\Program Files\CodeBlocks\MinGW\bin\gcc" "foo.o" -o "foo 01.exe"
0
Amir