多年以來,一直使用Eclipse作爲自己的Java IDE, 覺得最好的一點就是它的編輯器功能,所以也嘗試使用Eclipse+CDT作爲自己的C/C++開發平臺,不過早期的CDT版本中編輯器功能以及提供的開發方式並不盡如人意。隨着CDT的不斷髮展,在這些方面都有了長足的進步,已經可以用來作爲主要C/C++開發平臺。
本文詳細介紹了在Window系統上使用Eclipse和MinGW作爲C/C++開發平臺的的安裝和配置過程。
各個軟件版本是到目前爲止(2009年11月23日)的最新穩定版本:
- Eclipse 3.5.1
- CDT 6.0.1
- MinGW (MinGW-5.1.6, gdb for mingw 6.8, MSYS-1.0.11)
MinGW的安裝與配置
MinGW
這裏我們採用自動安裝方式,手動安裝可以參考MinGW.org的在線文檔 .
1. 在MingGW的下載頁面 下載並運行MinGW-5.1.6.exe
2. 在安裝嚮導的各個頁面:
- Install orjust download files? -> Download and install
- Choose Package -> Current
- Choose Components -> MinGW base tools, g++ compiler (不要選擇MinGW Make,我們後面要安裝的MSYS裏面帶了更完善的make工具)
- Destination Folder -> 輸入你要安裝到的位置,比如D:/C/MinGW
3. 安裝完成後,把MinGW的bin目錄,比如D:/C/MinGW/bin加到系統的環境變量PATH中
4. 驗證安裝: 寫一個簡單的test.c程序,在命令行輸入gcc -o test.exe test.c , 看編譯是否正常
GDB for MinGW
在上面安裝的MinGW中,並不包括gdb。爲了debug我們的程序,需要單獨下載和安裝gdb
1. 在MingGW的下載頁面 中GNU Source-Level Debugger下,下載gdb-6.8-mingw-3.tar.bz2
2. 使用7-zip解壓縮到MinGW的安裝目錄
3. 驗證安裝
- 寫一個簡單的test.c程序,在命令行輸入gcc -o test.exe -g test.c
- 在命令行運行 gdb test.exe
- 在gdb> 提示符後,輸入list ,查看打印出的test.c程序
MSYS
MSYS是一個window上的類似bash 的shell,可以用來替代Windows自帶的cmd.exe。它提供了部分Unix平臺上的常用工具,包括make。我們需要安裝它,以支持在Eclipse CDT上開發使用Makefile的程序。
1. 在MingGW的下載頁面 中MSYS Base System下,下載並運行MSYS-1.0.11.exe
2. 安裝過程中,指定安裝目錄,假定是D:/C/msys/1.0
3. 安裝到100%時,會彈出DOS窗口,詢問是否繼續進行post install, 輸入y
- Do you have MinGW installed?[yn] -> y
- Where is your MinGW installation? -> D:/C/MinGW (請用真實的安裝目錄替換,注意路徑分隔符要使用斜槓"/")
4. 安裝結束後,把MSYS的bin目錄,比如D:/C/msys/1.0/bin加到系統的環境變量PATH中
5. 在命令行輸入make -v 驗證安裝
Eclipse的安裝與配置
如果還沒有安裝JDK ,請先到SUN 的網站 下載安裝JDK1.6 (Java SE 6).
對於Eclispe,推薦下載 集成好CDT 的Eclipse 版本,這樣配置起來最簡單,問題也最少。
下載集成好CDT 的Eclipse(Eclipse IDE for C/C++ Developers ) windows版本 後,解壓縮即可。
簡單的C項目示例
假設現在要編寫一個華氏溫度和攝氏溫度之間換算的程序,並按照模塊分成了以下三個源程序:
1. temp_convert.h
2. temp_convert.c
3. main.c
使用Internal Builder
這種方式不需要自己編寫makefile,適用於結構簡單的項目。
在創建項目的時候,選擇 C Project->Executable->Empty Project, ToolsChains 選擇 MinGW GCC
把上面的三個程序加入項目,選擇Run as "Local C/C++ Application"既可編譯運行。
單獨編寫makefile
對於結構複雜,模塊比較多的項目,我們需要編寫makefile,來更好的控制程序的編譯以及其他相關過程。
在創建項目的時候,選擇 C Project->Makefile Project->Empty Project, ToolsChains 選擇 MinGW GCC
把上面的三個程序加入項目,然後新建一個makefile,內容如下:
編譯的時候,選擇Build Project既可,會默認執行all這個target。對於其他的make target,可以在makefile的Outline裏面,選中某個target,然後右鍵菜單"Add make Target".
參考資料
- Eclipse CDT online help: C/C++ Development User Guide
- MinGW.org: Getting Started