用Eclipse搭建C/C++開發環境

 本文假定你已經熟悉Java,Eclipse的安裝,並能順利啓動和運行Eclipse.此外因爲各軟件版本在不斷更新,有些地方可能不準確,以最新的、原文資料爲準。 

距上一次寫和調C++程序,已經5、6年了,光陰荏苒歲月無情,現在再重新拾起來,很多東西都要從頭來。Windows下C/C++的IDE有很多,我知道的就有MS Visual Studio,Borland C++等,但這些是要版權的。不要錢也有一些,但因爲對Eclipse太熟了,所以就選下面要講的Eclipse + GNU toolchain(話說toolchain這個詞很形象). 

1. 首先下載Eclipse for C++, 最新版是基於Eclipse 3.5.1的,叫做galileo(伽利略),受不了這種奇怪的名字了,爲什麼不叫布魯諾?上個版本3.4貌似叫做ganymede(木衛三)。下載地址:http://eclipse.org/downloads/,選擇32bit for windows,文件名叫 eclipse-cpp-galileo-SR1-win32.zip 

 

2. 解壓,直接運行。注意,至少JDK你已經安裝了(我用的是JDK1.6)。運行後一個灰藍色的welcome頁面出現,進入Tutorials。學東西先讀Tutorial是個好習慣。 

3. 首先了解一下什麼是CDT,就是 C/C++ Development Toolkit,bulabula... 然後它說,這個東西沒包含C/C++的編譯器、調試器,你得自己弄。 

4. 那就繼續看。Windows下,MinGW和Cygwin 是獲取GNU toolchain的2種主要方式(GNU toolchain,GNU下一系列的工具包,我的理解主要是gcc這一系列工具)。這兩者最大的區別是MinGW使用Windows C的運行庫,叫做mscvrt,而Cygwin使用了一組基於GPL的DLLs(GPL協議具有傳染性,使用GPL協議下的軟件後你自己開發的東西也要遵守GPL協議),因此MinGW避開了GPL協議。 

5. MinGW和CDT能很好的整合。好吧,我們裝MinGW(MinGW是Minimal GNU for Windows的意思,這個下載過程相當慢,我下了大半個小時)。當前版本是MinGW-5.1.6.exe,我一股腦來了個Full install。裝完後才發現這麼一句:Do not install the MinGW Make feature as the MSYS version of make from step 5 is a more complete implementation of make.(不要安裝MinGW的Make, 第5步的MSYS是個更好的實現方案) 

6. 爲了避免將來可能遇到的問題,卸了重裝。這裏是完整的安裝步驟: 
1)下載MinGW,地址 http://sourceforge.net/projects/mingw/files/ 
2)安裝MinGW base tool和g++編譯器(不要安裝Make);我把除了Make之外的都裝了,裏面居然還有個Ada的編譯器 
 

3)當前版本(它是指MinGW-5.1.3,不過我下的5.1.6同樣也沒有)沒有裝gdb debugger, 下載它:http://downloads.sourceforge.net/mingw/gdb-6.6.tar.bz2 
4)解壓gdb-6.6.tar.bz2 到你安裝MinGW的地方,gdb-6.6/下也有一系列bin,inclue文件夾,直接拷到MinGW下面覆蓋進去即可 
5)如果要用Makefile,請下載 MSYS-1.0.10.exe,MSYS是make及命令行的一個實現。嗯,要用。下載地址 http://downloads.sourceforge.net/mingw/MSYS-1.0.10.exe 
安裝界面是個命令界面,寫2個”y”,然後告知MinGW的安裝路徑即可。 
 

OK,安裝部分就完成了。下面寫2個小例子。 

7. 首先創建一個簡單的HelloWorld C++工程,這個很簡單,按Wizard嚮導建一個模板即可。 
 

Run的時候選Run Configurations, 然後雙擊C/C++ application建一個新的run configuration就行。 
 

8. 下面建一個Makefile類型的工程。選擇New C++ Project -> Makefile project -> Empty Project, 我們建一個空的項目,建完后里面什麼也沒有(除了2個.project文件),這時,我們要建一個源文件和一個make文件:main.cpp 和 makefile,如下,都建到根目錄下: 
 

C++代碼  收藏代碼
  1. /* 
  2.  * main.cpp 
  3.  */  
  4.   
  5. #include <iostream>  
  6. using namespace std;  
  7.   
  8. int main () {  
  9.     // Say Hello five times  
  10.     for (int index = 0; index < 5; ++index)  
  11.       cout << "HelloWorld!" << endl;  
  12.     char input = 'i';  
  13.     cout << "To exit, press 'm'" << endl;  
  14.     while(input != 'm') {  
  15.         cin  >> input;  
  16.         cout << "You just entered " << input  
  17.              << " you need to enter m to exit." << endl;  
  18.     }  
  19.     exit(0);  
  20. }  

 

Makefile代碼  收藏代碼
  1. all: hello.exe  
  2.   
  3. clean:  
  4.     rm main.o hello.exe  
  5.   
  6. hello.exe: main.o  
  7.     g++ -g -o hello main.o  
  8.   
  9. main.o:  
  10.     g++ -c -g main.cpp  


注意,makefile裏的行首縮進用的是Tab而不是空格。如果編譯時提示 No separator...就是這裏有問題。 

9. Ok, 選中工程,點Build(或點那個小錘子),你會發現這個錯誤:(Cannot run program "make": Launching failed),啊,我們的make.exe還沒設。選中工程,直接Alt-Enter到工程屬性頁,把msys的bin加到Path裏。 
 

10. 重新build, 大功告成。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章