Hoe een C-programma compileren op de opdrachtregel met MinGW?

Welke opdracht moet je op de opdrachtregel in Windows 7 invoeren om een basis C-programma te compileren?

Zoals ik me letterlijk afvraag wat je typt in de opdrachtprompt, om een .c-bestand te compileren.

Ik heb het geprobeerd:

> gcc foo.c

Maar er staat:

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

Ik heb ook geprobeerd:

> minGW foo.c

Maar ik ben terug:

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

Ik heb een pad-omgevingsvariabele ingesteld waar MinGW is geïnstalleerd:

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

Ik kan niet echt informatie vinden over waar ik de fout in ga, en kan ook niets vinden in de officiële MinGW-documentatie, omdat het lijkt alsof dit iets zo eenvoudigs is, een soort gênante vraag, dat het is bedacht weten mensen wat ze moeten doen?


Antwoord 1, autoriteit 100%

Het geeft aan dat het gcc.exeniet kon vinden.

Ik heb een padomgevingsvariabele ingesteld waar MinGW is geïnstalleerd

Misschien heb je het pad niet correct ingesteld?

echo %path%

toont het pad naar gcc.exe? Verder is de compilatie vergelijkbaar met Unix:

gcc filename.c -o filename

Antwoord 2, autoriteit 43%

Ik heb dit probleem gehad en kon niet vinden waarom het zich bleef voordoen. De reden is simpel: als je eenmaal de omgevingspaden hebt ingesteld, moet je het CMD-venster sluiten en opnieuw openen om op de hoogte te zijn van nieuwe omgevingspaden.


Antwoord 3, autoriteit 10%

Eerst:

Voeg de bin-mapmap van uw minGW toe ( bijv: C\mingw64\bin) in Systeemvariabelen => Pad. visueel voorbeeld


Compileren:

.c:gcc bestandsnaam.c -o verlangen

.cpp:g++ bestandsnaam.cpp -o verlangen


Uitvoeren:

verlangen/ of./desire


Antwoord 4, autoriteit 5%

Stel de omgevingsvariabele in op het EXACT pad naar gcc.exe als volgt:

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

Antwoord 5, autoriteit 5%

Ik kwam dezelfde foutmelding tegen na het uitpakken van MinGW-archieven naar C:\MinGWen het instellen van het pad naar de omgevingsvariabele als C:\MinGW\bin;.

Als ik probeer te compileren, krijg ik deze foutmelding!

gcc: error: CreateProcess: Geen dergelijk bestand of map

Ik kwam er eindelijk achter dat sommige van de gedownloade archieven als beschadigd werden gemeld terwijl ik ze uitpakte naar C:\MinGW(maar ik negeerde dit aanvankelijk).
Nadat ik de kapotte bestanden had verwijderd en de hele archieven opnieuw had gedownload van SourceForge, ze met succes had uitgepakt naar C:\MinGW, was de fout verdwenen en werkte de compiler prima en voerde mijn gewenste hello.exeuit.

Ik heb dit uitgevoerd:

gcc hello.c -o hello

Het resultaat was dit (een knipperend onderstrepingsteken):

_


Antwoord 6, autoriteit 5%

Ik had hetzelfde probleem met .c-bestanden die functies bevatten (niet main()van mijn programma). Mijn header-bestanden waren bijvoorbeeld “fact.h” en “fact.c”, en mijn hoofdprogramma was “main.c”, dus mijn commando’s waren als volgt:

E:\proj> gcc -c fact.c

Nu had ik een objectbestand van fact.c (fact.o). daarna:

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

Toen was mijn programma (prog.exe) klaar voor gebruik en werkte het naar behoren. Ik denk dat -cna gccbelangrijk was, omdat het objectbestanden maakt die kunnen worden gekoppeld om het programma te maken dat we nodig hebben. Zonder -cte gebruiken, zoekt gcc main in je programma en als het het niet vindt, krijg je deze foutmelding.


Antwoord 7, autoriteit 5%

U kunt de map van het MinGW-bestand permanent opnemen door te klikken op Deze computer, Eigenschappen, Geavanceerde systeeminstellingen, Omgevingsvariabelen en vervolgens uw map te bewerken en te plakken.


Antwoord 8

In plaats van de %PATH%in te stellen, kunt u uw msysschelp. In de standaard msys- en mingw-installatie bevindt gcc zich in het pad, dus u kunt gccof which gccuitvoeren.

Ik heb een batchbestand sh.batop mijn Windows 7, in %PATH%:

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

Als ik gcc wil gebruiken, voer ik cmd in, dan shen dan gcc. Ik vind het erg handig.

Als je met linux-software werkt, vermijd dan gespreide mappen zoals Program Files. Installeer ze liever in Program_Files. Hetzelfde geldt voor tools die u misschien wilt gebruiken vanuit de msys-omgeving.


Antwoord 9

Als je je tekst in de padvariabele hebt geplakt en een spatie voor de puntkomma hebt toegevoegd, moet je die verwijderen en een backslash toevoegen aan het einde van de map (;C:\Program Files (x86)\CodeBlocks\MinGW\bin


Antwoord 10

Ik had ooit dit soort problemen bij het installeren van MinGW om in Windows te werken, zelfs nadat ik het juiste systeem PATH in mijn omgevingsvariabelen had toegevoegd.

Na dagen van ellende stuitte ik eindelijk op een thread waarin werd aanbevolen de originele MinGW-compiler te verwijderen en de map C:\MinGWte verwijderen en de TDM-GCC MinGW-compiler te installeren die =”http://tdm-gcc.tdragon.net/download” rel=”nofollow”>hier.

Je hebt de mogelijkheid om een 64/32-bits installatieprogramma te kiezen op de downloadpagina, en het maakt ook de omgevingspadvariabelen voor je aan.


Antwoord 11

Waar is je gcc?

Mijn gccstaat in “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"

Antwoord 12

Ik ben vrij laat met het beantwoorden van deze vraag (5 jaar om precies te zijn), maar ik hoop dat dit iemand helpt.

Ik vermoed dat deze fout wordt veroorzaakt door de omgevingsvariabelen in plaats van door GCC. Wanneer u een nieuwe omgevingsvariabele instelt, moet u een nieuwe opdrachtprompt openen! Dit is 90% van de tijd het probleem (toen ik GCC voor het eerst downloadde zat ik hier 3 uur aan vast!) Als dit niet het geval is, heb je waarschijnlijk de omgevingsvariabelen niet goed ingesteld of zit je in een map met spaties in de naam.

Als GCC eenmaal werkt, kan het lastig zijn om elke keer te compileren en te verwijderen. Als je geen volledige ide wilt installeren en python al hebt geïnstalleerd, probeer dan dit github-project: https://github.com/sophiadm/notepad-is-effort
Het is een kleine IDE geschreven met tkinter in python. U kunt gewoon de broncode kopiëren en opslaan als een .py-bestand


Antwoord 13

In Windows 10 kunnen vergelijkbare stappen worden gevolgd in andere versies van Windows.

Klik met de rechtermuisknop op “Deze computer” selecteer Eigenschappen, Ga naar Geavanceerde systeeminstellingen -> Geavanceerd -> Selecteer “Omgevingsvariabelen..” .

Zoek “Pad” selecteer het en kies de bewerkoptie -> Klik op Nieuw en voeg “C:\MinGW\bin” toe (of de locatie van gcc.exe, als je op een andere locatie hebt geïnstalleerd) -> Opslaan en herstart opdrachtprompt. Gcc zou moeten werken.


Antwoord 14

makezoals gewoonlijk… Zorg ervoor dat je het in je pad hebt staan en corrigeer Makefile

Other episodes