A.?為什么要在Linux使用Eclipse開發C/C++程序??

Linux是一個以C/C++開發為主的平臺,無論是Kernel或是Application,主要都使用C/C++開發。傳統在Linux下開發程序,是在文字模式下,利用vi等文字編輯器撰寫C/C++程序存盤后,在Command line下使用gcc編譯,若要debug,則使用gdb。


這種開發方式生產力并不高,若只是開發學習用的小程序則影響不大,但若要開發大型項目時,程序檔案個數眾多,需要用project或solution的方式管理;且debug時breakpoint的加入,單步執行,觀察變量變化等,都需要更可視化的方式才能夠增加生產力;最重要的,由于現在的程序語言皆非常的龐大,又有復雜的函式庫,要程序員熟記所有的程序語法和function名稱,實在很困難,所以語法提示(Intellisense)的功能就非常重要,這些就必須靠IDE來達成。


在Windows平臺上,若要開發C/C++程序,我們有Microsoft Visual Studio、Borland C++ Builder可用,這些都是很好用的IDE,但可惜僅能在Windows下使用,但是在Linux平臺呢?基于以下理由,我推薦使用Eclipse開發C/C++程序:


1.?Eclipse是一個用Java所撰寫IDE,因此可跨平臺,所以在Linux和Windows平臺下皆可使用Eclipse,可降低程序員熟析IDE的學習曲線。


2.?Eclipse雖然主要拿來開發Java程序,但事實上Eclipse為一個『萬用語言』的IDE,只要掛上plugin后,就可以在Eclipse開發各種語言程序,所以我們只要掛上CDT(C/C++ Development Toolkit)后,就可以在Eclipse開發C/C++程序,除此之外,目前的主流程序語言,如C/C++、C#、Java、PHP、Perl、Python、Ruby、Rebol、JavaScript、SQL、XML、UML等,皆可在Eclipse上撰寫,所以只要熟析Eclipse的IDE環境,將來若開發其它語言程序,就不用再重新學習IDE環境了。


3.?最重要的,Eclipse和CDT是Open Source且完全免費,取得相當容易,事實上Fedora 5已經包含Eclipse和CDT了,雖然預設Fedara 5安裝時并沒有含Eclipse,只要手動另外加選即可。


B.?如何在Linux下安裝Eclipse和CDT??
i.?由Linux Distribution安裝Eclipse,Fedora 5就內含Eclipse和CDT。

ii.?手動安裝
? 1.?下載檔案
??? A、?下載JRE(Java Runtime Environment) 。(http://java.sun.com/javase/downloads/index.jsp)

??? B、?下載Eclipse SDK。(http://www.eclipse.org/downloads/)

??? C、?下載CDT。(http://www.eclipse.org/cdt/downloads.php)

? 2.?安裝
??? A、?安裝JRE
????? i.?[root@localhost ~]#mkdir /usr/local/java

????? ii.?(將檔案jre-1_5_0_09-linux-i586-rpm.bin下載到/usr/local/java目錄下)

????? iii.?(超級用戶模式)
????? [root@localhost ~]#su????????????

????? iv.? [root@localhost ~]#cd /usr/java

????? v.?(將您所下載的檔的權限更改為可執行)
????? [root@localhost java]#chmod a+x jre-1_5_0_09-linux-i586-rpm.bin?

????? vi.?(啟動安裝過程)
????? [root@localhost java]#./jre-1_5_0_09-linux-i586-rpm.bin
????? (此時將顯示二進制許可協議,按控格顯示下一頁,讀完許可協議后,輸入 『yes』繼續安裝。此時會將解壓縮,產生jre-1_5_0_9-linux-i586.rpm)


????? vii. (安裝jre-1_5_0_9-linux-i586.rpm)
????? [root@localhost java]#rpm –ivh jre-1_5_0_9-linux-i586.rpm

????? (此時會將JRE裝在/usr/java/jre1.5.0_09目錄下)

????? viii.?(設定環境變量,讓Linux能找到JRE)
????? [root@localhost java]#vi /etc/profile
????? (將以下內容加入在檔案后面)

1 PATH = $PATH: / usr / java / jre1. 5 .0_09 / bin
2 export?JAVA_HOME =/ usr / java / jre1. 5 .0_09
3 export?CLASSPATH = $JAVA_HOME / lib:.

????? (存盤后,重新啟動Linux)

????? ix.?(測試Java是否安裝成功)
????? [root@localhost ~]#java –version


??? B、?安裝Eclipse SDK
????? i.?(將檔案eclipse-SDK-3.2.1-linux-gtk.tar.gz下載到桌面)

????? ii.?[root@localhost ~]#cd /usr/local

????? iii.?[root@localhost local]#cp ~Desktop/eclipse-SDK-3.2.1-linux-gtk.tar.gz .????

????? iv.?(將eclipse-SDK-3.2.1-linux-gtk.tar.gz解壓縮)
????? [root@localhost local]#tar –zxvf eclipse-SDK-3.2.1-linux-gtk.tar.gz

????? v.?[root@localhost local]#cd eclipse

????? vi.?(執行Eclipse)
????? [root@localhost eclipse]#./eclipse

????? vii.?(Select a workspace)
????? (將Use this as the default and do not ask again打勾,以后就不會出現這個窗口)


????? (第一次執行Eclipse會出現此error,因為沒有任何Eclipse設定檔,所以無法讀取,第二次執行Eclipse就無此錯誤訊息,按OK繼續。)


????? (Eclipse主畫面)


??? C、 安裝CDT
????? i. (將檔案org.eclipse.cdt-3.1.1-linux.x86.tar.gz下載到桌面)

????? ii. [root@localhost ~]#cp ~/Desktop/org.eclipse.cdt-3.1.1-linux.x86.tar.gz .

????? iii. (將org.eclipse.cdt-3.1.1-linux.x86.tar.gz解壓縮)
????? [root@localhost ~]#tar –zxvf org.eclipse.cdt-3.1.1-linux.x86.tar.gz
????? (檔案將解到~/eclipse目錄下)

????? iv. (安裝CDT plugin)
????? [root@localhost ~]cp –r eclipse/plugins/. /usr/local/eclipse/plugins/

????? v. (啟動Eclipse,多了C和C++ Project支持)?
???

C.?如何在Eclipse上開發C/C++程序?
i.?建立Hello Word project
? 1.?建立C/C++ project


? 2.?選擇Managed Make C++ Project(若選擇Managed Make C++ Project,Eclipse會自動為我們建立make file;若選擇Standard Make C++ Project,則必須自己寫make file。)


? 3.?輸入Project name


? 4.?選擇Project類型(如執行檔或Library,這里選擇執行檔即可)


? 5.?額外的設定


? 6.?Open Associated Perspective?(選Yes繼續)


? 7.?建立C++ Source File


8.?輸入C++ Source File檔名


? 9.?輸入C++程序代碼


? 10.?執行程序(顯示在下方的Console區)


ii.?如何在Eclipse CDT中Debug C/C++程序?
1.?在Eclipse中Debug,就如同在一般IDE中Debug一樣,只要在程序代碼的左方按兩下,就可加入breakpoint。


? 2.?啟動Debug


? 3.?Debug設定,按Debug開始Debug


? 4.?單步執行,顯示變量變化


E.?結論
Eclipse為Linux在C/C++開發提供一個完善的IDE環境,事實上,以我用過眾多IDE的經驗,除了Visual Studio最方便外,Eclipse的好用也直追Visual Studio,并且超越Borland C++ Builder及Dev C++,雖然安裝上比較麻煩,但只要依照本文介紹一步一步的設定,就一定可完成Eclipse設定,若想要在Windows平臺使用gcc compiler,也建議使用Eclipse + CDT + MinGW的組合。

See Also
[轉載] Eclipse + CDT + MinGW 安裝方法

Reference
1.?為Linux手動下載和安裝Java Runtime Enrironment(JRE)的說明
(http://www.java.com/zh_CN/download/help/5000010500.xml)
2.?Eclipse 3.0 CDT on Linux
(http://www.autexier.de/jmau/dev/CDT/cdt.html)