Linux開發(fā)工具和Windows開發(fā)工具對比
Linux開發(fā)工具就C++開發(fā)工具而言,與Windows下微軟(VC, VS2005等)一統(tǒng)天下相比,Linux/Unix下C++開發(fā),可謂五花八門,各式各樣。Emacs, vi, eclipse, anjuta,kdevelop等層出不窮。
Windows下
開發(fā)工具多以集成開發(fā)環(huán)境IDE的形式展現(xiàn)給最終用戶。例如,VS2005集成了編輯器,宏匯編ml,C /C++編譯器cl,資源編譯器rc,調(diào)試器,文檔生成工具, nmake。它們以集成方式提供給最終用戶,對于初學者而言十分方便。但是,這種商業(yè)模式,直接導致用戶可定制性差,不利于自動化,集成第三方工具的能力弱。例如,無法定制一些宏來處理一些重復操作;體會不到自動化makefile一步到位快感;無法遠程登錄到服務(wù)器上進行開發(fā);無法使用某種”粘合劑”來把第三方工具(例如,文本工具,字符串工具)有效地調(diào)用起來。可以說,良好的商業(yè)支持和傻瓜式開發(fā),是它們主要的優(yōu)點。
在linux下
Linux開發(fā)工具被切割成一個個獨立的小工具。各自處理不同的問題。例如,編輯器(emacs, vim)用來進行編輯程序的,調(diào)試器(gdb)用來調(diào)試程序,編譯器(GCC)用來編譯和鏈接程序的,性能分析工具(gcov, gprof)用來優(yōu)化程序的,文檔生成器(doxygen)用來生成文檔的。同時,還有一些系統(tǒng)工具和系統(tǒng)知識,我們是很有必要了解的:程序自動化機制 makefile,系統(tǒng)粘合劑shell,系統(tǒng)查找工具grep, locate, find。其它的工具(例如ctags, OCI公司的MPC等等),一旦熟練掌握,它們將成為你手中的利器。
本文主要是一些針對Linux開發(fā)工具使用的經(jīng)驗之談。由于,工具品種繁多,我們沒有能力也沒有必要一一介紹。對于Linux下IDE工具,例如 eclipse, anjuta等,它們雖然也很實用,但是使用起來比較簡單,而且目前還算不上主流。所以,它們將不被著重介紹。同時,本文也不打算寫成各個工具的操作手冊,只著眼于介紹各個工具的想要解決的問題、運行機理和主要特性。
【編輯推薦】