2012-05-19 111 views
16

在Windows 7的命令行中必須輸入什麼命令才能編譯基本的C程序?如何使用MinGW在命令行上編譯C程序?

就像我真的想知道你在命令提示符下輸入什麼,編譯一個.c文件。

我想:

> gcc foo.c 

但它說:

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

我也試過:

> minGW foo.c 

但我回來:

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

我有一個PATH環境變量設置爲安裝MinGW的地方:

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

我真的不能找到我要去錯在何處的任何信息,並不能找到官方的MinGW文檔中任何事情,因爲這似乎是一件很簡單的事情,這是一個令人尷尬的問題,它讓人想知道該怎麼做?

+3

你試過了什麼?你遇到了什麼錯誤?你看到什麼信息?你想要編譯什麼? 「我無法讓它工作」是沒有足夠的信息讓某人以有意義的方式幫助你。 –

+0

我有一個名爲test.c的小程序,我想從Windows中的命令行進行編譯。我cd到正確的目錄,它的位置,但gcc命令返回不能識別的命令,以及。 –

+0

@CodyGray您的鏈接似乎已中斷。你能否更新它? – itsols

回答

12

這表明它找不到gcc.exe

I have a path environment variable set to where MinGW is installed

也許您還沒有正確設置路徑?

echo %path% 

顯示gcc.exe的路徑?否則,編譯類似於Unix的:

gcc filename.c -o filename 
+0

回聲%path%返回C:\ Program Files文件(x86)\ CodeBlocks \ MinGW \ bin並且在bin中是gcc.exe,與它所在的位置完全匹配? –

+2

嗯...發佈你得到的確切的錯誤消息。 –

+0

'gcc'不被識別爲內部或外部命令,可操作程序或批處理文件。 –

0

使像往常一樣......只要確保你有它在你的路徑和正確的Makefile

2

環境變量剛剛成立的確切路徑gcc.exe是這樣的:

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

不要在包含「Program File」 – kuhajeyan

0

而不是設置%PATH%您可以輸入您的msys殼。在標準的msys和mingw安裝中,gcc位於路徑中,因此您可以運行gccwhich gcc

我有一個批處理文件sh.bat在我的Windows 7,在%PATH%:

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

每當我想用gcc我輸入cmd,然後sh,然後gcc。我覺得很方便。

當使用linux發起的軟件時,避免間隔目錄,如Program Files。安裝它們而不是Program_Files。同樣的問候你可能想從msys環境運行的工具。

1

在將MinGW歸檔文件解壓到C:\MinGW並將環境變量的路徑設置爲C:\MinGW\bin;後,我遇到了同樣的錯誤消息。

當我嘗試編譯時,我得到這個錯誤!

gcc: error: CreateProcess: No such file or directory

我終於想通了,雖然他們unpaking到C:\MinGW一些下載的檔案報告壞了(但我忽略了這個最初)。 一旦我刪除了損壞的文件,並再次從SourceForge下載整個存檔,成功將它們解壓縮到C:\ MinGW,錯誤消失了,編譯器運行正常,輸出我想要的hello.exe

我跑了這一點:

gcc hello.c -o hello 

結果的結果是這樣的(一個閃爍的下劃線):

_

0

如果您粘貼文本到路徑變量和前添加一個空格分號,你應該刪除它並在目錄末尾添加一個反斜槓(; C:\ Program Files(x86)\ CodeBlocks \ MinGW \ bin

8

我有這個問題並找不到爲什麼它一直在發生。原因很簡單:一旦建立了環境路徑,就必須關閉CMD窗口,並再次打開它,以便了解新的環境路徑。

+0

這樣的空格的路徑上安裝mingw。我開了5個博客,10個新文章,20次查看路徑,我忘了關閉並重新打開CMD以反映變化的變量...... – powersource97

+0

你是上帝:)謝謝 –

+0

謝謝!被邊緣沮喪! –

0

即使在我的環境變量中添加了正確的系統路徑後,我曾經有過安裝MinGW在Windows中工作的這類問題。

經過苦難的日子裏,我終於迷迷糊糊上建議卸載原來的MinGW的編譯器和刪除文件夾C:\MinGW和安裝TDM-GCC編譯器的MinGW可以發現here一個線程。

您可以從下載頁面選擇64/32位安裝程序,也可以爲您創建環境路徑變量。

1

我有與包含功能(不是我的程序的main()).c文件相同的問題。例如,我的頭文件是「fact.h」和「fact.c」,和我的主要項目是「main.c」文件,所以我的命令是這樣的:

E:\proj> gcc -c fact.c 

現在我有一個目標文件fact.c(fact.o)。之後:

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

然後我的程序(prog.exe)準備好使用並正常工作。我認爲在gcc之後-c很重要,因爲它使得可以附加的目標文件成爲我們需要的程序。如果不使用-c,gcc會在你的程序中找到main,當它沒有找到它時,它會給你這個錯誤。

1

您可以通過單擊我的電腦,屬性,高級系統設置,環境變量,然後編輯並粘貼您的目錄,永久包含MinGW文件的目錄。

0

你的gcc在哪裏?

我的gcc位於「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

我很晚回答這個問題(5年準確),但我希望這可以幫助別人。

我懷疑這個錯誤是因爲環境變量而不是GCC。當你設置一個新的環境變量時,你需要打開一個新的命令提示符!這是問題的90%(當我第一次下載GCC的時候,我被這個問題困住了3個小時!)如果情況並非如此,你可能沒有正確設置環境變量,或者你在一個文件夾中名字中的空格。

一旦你有GCC工作,每次編譯和刪除都會很麻煩。如果你不想安裝完整的ide,並且已經安裝了python,那麼試試這個github項目:https://github.com/sophiadm/notepad-is-effort 這是一個用python編寫的tkinter的小IDE。您可以複製源代碼並將其保存爲.py文件

0

在Windows 10中,其他版本的Windows中可以遵循類似的步驟。

右鍵單擊「我的電腦」選擇屬性,轉到高級系統設置 - >高級 - >選擇「環境變量..」。

查找「路徑」選擇它並選擇編輯選項 - >單擊新建並添加「C:\ MinGW \ bin」(或gcc.exe的位置,如果您已安裝在其他位置) - >保存並重啓命令提示符。 Gcc應該工作。

相關問題