GNU/Linux開發第一步(轉)

BSDLite發表於2007-08-11
GNU/Linux開發第一步(轉)[@more@]目前,很多朋友學完了C語言,但並不能在GNU/Linux系統下進行程式設計開發。究其原因,GNU/Linux系統還未大面積普及是大礙之一,另外,人們不熟悉GNU/Linux系統下的開發工具也是關鍵。本文就是以“用例”的形式講述在GNU/Linux系統下如何進行應用軟體開發的基礎和常識,為將來在GNU/Linux系統中進行大規模或企業級開發鋪路。所謂“用例”,就是透過簡單的例子來學習,最終達到能在自己的實際中應用的目的。

本文要求讀者熟練Linux作業系統的常用操作,掌握C語言語法,能理解Linux系統的組成原理和了解Shell和Perl等指令碼語言。

平臺選擇

首先,從事GNU/Linux(以下簡你Linux)系統下的應用開發,應該有一個合適的操作平臺和開發環境,所以選擇和安裝Linux作業系統成為Linux開發者的第一課。目前可供選擇的Linux作業系統種類很多,如Red Hat(最新版名為Fedora)、SuSE、Mandrake和中科紅旗(Red Flag),還有開源組織中有名的Debian等。雖然版本很多,但它們在底層系統組成上的差別是微乎其微的。我們以Red Hat 9.0為開發平臺,以後的操作和開發都在這一系統平臺上進行。

Linux作業系統核心底層的開發工具和輔助工具,有的是直接建立在核心基礎上,如Shell、GCC和Make等;有的是建立在指令碼語言的基礎之上的,如Automake、Autoconf和Libtool等。它們是Linux作業系統外層的圖形介面開發工具(GTK+、QT等)和網路應用開發工具(Perl、PHP和Python等)的基礎和過渡。掌握了底層開發工具,對外層應用開發是有好處的,這樣可以加快和最佳化外層應用開發,從而達到開發速度和開發質量的和諧統一。

慎選IDE

本文講述的程式編輯工作多數是用Linux系統中常用的Emacs和vi來做,在終端視窗中進行命令編譯除錯。熟悉Windows下程式設計的朋友們會質疑為什麼不用IDE(整合開發環境),是Linux下沒有嗎?答案當然是否定的。Linux下有很多IDE,事實上Emacs就是一個非常好的IDE,其它的還有CodeForge、ANJUTA和Kdeveloper等。對程式設計人員來說,IDE在編譯控制的底層隱藏了很多東西,如果軟體開發者真正瞭解和掌握了這些東西,對開發出更好的應用程式是大有幫助的。

對於IDE可以這麼比喻,它好象是飛機上的自動駕駛儀,有了它飛行員會輕鬆許多,但如果飛行員沒有真正掌握飛機的駕駛技術,在飛行中如果自動駕駛儀失靈的話,墜機是必然的,這樣的飛行員是不能讓他駕機的。程式設計人員也如此,只用IDE開發軟體是不夠的。

開始動手

坐談論道不如起而躬行。下面就從一個簡單的C語言原始檔的編譯開始,研究這些內容。

首先是安排好目錄。在自己的使用者目錄下,建立一個總的目錄learn-gnu,然後在此目錄下建立第一個學習目錄learn-1,在此目錄下用Emacs編輯hello.c檔案,輸入如下內容:
QUOTE:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-946718/,如需轉載,請註明出處,否則將追究法律責任。

上一篇: BSD 簡史(轉)
GNU/Linux開發第一步(轉)
請登入後發表評論 登入
全部評論

相關文章