MinGW介紹與使用

2021-08-24 18:29:03 字數 3222 閱讀 7688

3.1:mingw 是什麼?

mingw 提供了一套簡單方便的windows下的基於gcc 程式開發環境。mingw 收集了一系列免費的windows 使用的標頭檔案和庫檔案;同時整合了gnu ( )的工具集,特別是gnu 程式開發工具,如經典gcc, g++, make等。mingw是完全免費的自由軟體,它在windows平台上模擬了linux下gcc的開發環境,為c++的跨平台開發提供了良好基礎支援,為了在windows下工作的程式設計師熟悉linux下的c++工程組織提供了條件。

3.2:為什麼使用mingw?

因為我和很多it人士一樣,不願意吊死在$m這棵樹上。且不說開源這個理念的偉大,僅僅就windows的安全性也已經讓人們很不安心了。如果再深入一點從編寫程式來看,在c++標準尚不成熟時期產生的mfc今天看來基本上就是蓋子大叔憑著個人(或許是$m公司^^)理解所使用的c++方言。在我們期盼c++0x時代到來之前,沒有任何實際行動能比嚴格遵循c++的iso標準更能表達我們對於c++這個偉大的哲學體系的尊重。從這個角度來說,遵循iso標準的實現就是好的實現。所以,mingw不會比vc差,況且,他既是開源軟體家族中的一員,也是*nix平台下事實標準gcc的翻版。如果有一天我們開始使用linux平台了,會因為今天透過mingw所了解的gcc知識而受益。

mingw的官方主頁是:

安裝時需要注意以下幾個方面:

1) 建議選擇current版本,previous表示以前的版本;candidate表示當前正在開發的版本,可能正在測試中,還不是非常穩定。

2) 在選擇安裝模組的時候,根據我們的需要,只需要選擇以下三個:mingw base tools, g++ compiler, mingw make。

3) 安裝路徑請選擇乙個容易找到的地方,預設的c:\mingw 是不錯的選擇。

3.4:mingw的簡單使用。

開啟「命令提示符」(console)視窗,我們可以簡單的把目錄轉到比如 c:\mingw\bin 這樣的位置去工作。但是這顯然不是乙個好的方式,因為這樣一定會把bin裡面搞得很混亂。所以,我們在另外乙個「乾淨」的地方,比如 d:\project ,把這裡設定成mingw的工程工作區。這樣,我們需要在系統的path裡面新增能找到bin下面*.exe檔案的路徑,所以做乙個批處理檔案是最簡單的方法。我的startg++.bat檔案這樣寫的:

@setpath=c:\mingw\bin;%path%;

@echo---**歡迎使用mingw(gcc)系統**---

@echoupdatebylf426(e-mail:[email protected])2007-12-10

@cmd

然後,你可以建立乙個該檔案的快捷方式放在桌面上,再為這個快捷方式指定乙個漂亮的圖示,nice!

接下來,我們需要建立乙個cpp檔案,用什麼來寫cpp呢?

3.4.1:(插播)vim ??

vim abc.def

你就進入了vim的編輯介面。

2) 按"i"鍵,就可以輸入文字了。退回到編輯方式,按esc,再進入插入方式,再按i,就這樣...

3) vim在編輯方式下本來的游標移動是h, j, k, l,不過,上下左右箭頭也是可以使用的。

4) 編輯完成後,(編輯方式下)按shift+z兩次,或者:wq就可以儲存退出。使用:q!可以不儲存強制退出。

3.4.2:mingw的簡單使用。(續)

繼續剛才的話題,我們建立乙個叫 hello.cpp 的檔案(據說hello world是程式設計師的咒語...)

#include

intmain(intargc,char*argv)

我們可以簡單的使用命令:g++ hello.cpp,與最傳統的unix系統下的c編譯器一樣,mingw為我們生成了乙個名為a的可執行檔案,當然,在win32下,名字叫做a.exe。

可以使用引數 -o 來指定編譯的可執行檔案的名字:g++ -o hello.exe hello.cpp (或者也可以不寫名exe,直接g++ -o hello hello.cpp 結果一樣)。這樣,得到的檔案就是hello.exe。

可以使用引數 -c 來生成與源檔名相同的目標檔案:g++ -c hello.cpp ,得到的檔案是hello.o 。

目標檔案可以繼續連線成可執行檔案:g++ hello.o ,得到檔案a.exe 。

多個原始檔,目標檔案和庫檔案都可以同時編譯和連線。

3.5:獲得mingw下的sdl開發庫。(development libraries)

3.6:為mingw設定sdl庫。

找到你在硬碟上安裝mingw的位置,類似:

c:\mingw

開啟include資料夾,在裡面建立乙個新資料夾,取名為sdl,開啟這個新的資料夾:

c:\mingw\include\sdl

然後,將sdl development libraries中include資料夾裡面的檔案全部拷貝到剛才建立起來的那個新資料夾中。

然後,回到mingw的資料夾下,開啟lib資料夾:

c:\mingw\lib

將sdl development libraries中lib資料夾下的libsdl.dll.a, libsdl.la和libsdlmain.a三個檔案拷貝到剛才的那個mingw的lib資料夾下。

最後,把sdl development libraries中lib資料夾下的sdl.dll檔案拷貝到

c:\windows\system32

下。當然,另外乙個選擇是將sdl.dll隨時繫結到使用了sdl庫編譯的*.exe檔案所在的資料夾中。這通常在發布你的程式的時候使用。

3.7:建立第乙個sdl程式。

執行我們之前的那個startg++.bat 檔案,開啟console視窗,執行命令:vim main.cpp ,將下列**寫入並儲存。

#include

#include"sdl/sdl.h"

intmain(intargc,char*argv)

catch(constchar*s)

std::cout<

sdl_quit();

return0;

}執行g++命令:g++ -o mysdl.exe main.cpp -lmingw32 -lsdlmain -lsdl

引數 -l (小寫的l)使庫檔案得以與原始檔一起編譯和連線。(簡單的可以認為-labc即連線了名稱符合libabc.*的所有庫檔案)

最後說明的兩個引數是:-mconsole 和 -mwindows

他們的效果是使可執行程式是帶命令列控制視窗的或者是純windows視窗的,預設情況下應該是帶命令列控制視窗的。

執行mysdl.exe可以看到檔案的執**況。

MinGW介紹與使用

原文出處不知道 來的,留我copy的位址算了 3.1 mingw 是什麼?mingw 提供了一套簡單方便的windows下的基於gcc 程式開發環境。mingw 收集了一系列免費的windows 使用的標頭檔案和庫檔案 同時整合了gnu 的工具集,特別是gnu 程式開發工具,如經典gcc,g mak...

minGW 安裝與使用

簡介 mingw mingw是指只用自由軟體來生成純粹的win32可執行檔案的編譯環境,它是minimalist gnu on windows的略稱。安裝 mingw 執行 mingw installer,按照嚮導進行安裝。安裝後需要配置環境變數。找到mingw安裝目錄,將 your install...

MinGW詳細介紹

mingw官網 mingw,是 minimalist gnufor windows 的縮寫。它是乙個可自由使用和自由發布的windows特定 標頭檔案和使用gnu工具集導入庫的集合,允許你在 gnu linux 和windows 平台生成本地的windows程式而不需要第三方c執行時 c runti...