[情報] linux下的c開發

看板Soft_Job作者 (小妹( ̄⊿ ̄"盛夏之年)時間15年前 (2009/07/07 17:09), 編輯推噓11(11011)
留言22則, 20人參與, 最新討論串1/1
※ [本文轉錄自 C_and_CPP 看板] 一、工具的使用   1、學會使用vim/emacs,vim/emacs是linux下最常用的源碼編輯具,不光要學會用它們編輯源碼,還要學會用它們進行查找、定位、替換等。新手的話推薦使用vim,這也是我目前使用的文本編輯器。   2、學會makefile文件的編寫規則,並結合使用工具aclocal、autoconf和automake生成makefile文件。   3、掌握gcc和gdb的基本用法。掌握gcc的用法對於構建一個軟件包很有益處,當軟件包包含的文件比較多的時候,你還能用gcc把它手動編譯出來,你就會對軟件包中各個文件間的依賴關係有一個清晰的瞭解。   4、掌握svn/cvs的基本用法。這是linux,也是開源社區最常用的版本管理系統。可以去試著參加sourceforge上的一些開源項目。   二、linux/unix系統調用與標準C庫   系統調用應用軟件與操作系統的接口,其重要性自然不用說,一定要掌握。推薦學習資料為steven先生的UNIX環境高級編程(簡稱APUE)。   三、庫的學習   無論是在哪個平台做軟件開發,對於庫的學習都很重要,linux下的開發庫很多,我主要介紹一下我常常用到的一些庫。   1、glib庫   glib 庫是gtk+和gnome的基礎庫,並具是跨平台的,在linux、unix和windows下都可以用。glib庫對於linux平台開發的影響就像 MFC對windows平台開發的影響一樣,很多開源項目都大量的使用了glib庫,包括gimp、gnome、gaim、evolution和 linux下的集群軟件heartbeat。因為glib庫自帶有基本的數據結構實現,所以在學習glib庫的時候可以順便學習一下基本的數據結構(包括鏈表、樹、隊列和hash表)。   2、libxml庫   libxml是linux平台下解析XML文件的一個基礎庫,現在很多實用軟件都用XML格式的配置文件,所以也有必要學習一下。   3、readline庫   readline 庫是bash shell用的庫,如果要開發命令行程序,那麼使用readline庫可以減少很多工作量,比如bash裡的命令行自動補全,在readline裡就已經有實現,當然你也可以用自己的實現替代庫的行為。readline庫有很多網站介紹的,只要google一下readline就可以找到一堆了。   4、curses庫   curses 庫以前是vi程序的一部分,後來從vi裡提取出來成為一個獨立的庫。curses庫對於編寫終端相關的程序特別有用,比如要在終端某一行某一列定位輸出,改變終端字體的顏色和終端模式。linux下的curses庫用的是GNU實現的ncurses(new curses的意思)。   5、gtk+和KDE庫   這兩個庫是開發GUI應用程序的基礎庫,現在linux下的大部份GUI程序都是基於這兩個庫開發的,對於它們 的學習也是很有必要的。   四、網絡的學習   網絡這個東西太寬了,推薦學習資料steven先生的UNIX網絡編程(簡稱UNP)和TCP/IP協議詳解,更進一步的話可以學習使用libnet編寫網絡程序。 http://linux.chinahtml.com/2007/119207208116501.shtml -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.175.47.74 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.175.47.74 ※ 編輯: WRlTERT1NA 來自: 202.175.47.74 (07/07 17:09)

07/07 17:17, , 1F
這用語看起來真難過.....
07/07 17:17, 1F

07/07 17:36, , 2F
只要寫出來的東西是對的就好.......
07/07 17:36, 2F

07/07 22:14, , 3F
劣2... 這篇是想衝文章數嗎....
07/07 22:14, 3F

07/07 23:04, , 4F
好屌歐
07/07 23:04, 4F

07/07 23:17, , 5F
這是哪一國的語言啊? 我怎麼都看不懂= =
07/07 23:17, 5F

07/07 23:30, , 6F
這篇寫的不錯 阿..@@"..可能我等級太低了
07/07 23:30, 6F

07/07 23:51, , 7F
庫....好酷喔 是library的意思嗎..?
07/07 23:51, 7F

07/07 23:57, , 8F
侷促一隅,無關全局的一篇
07/07 23:57, 8F

07/08 00:07, , 9F
china的文章吧. 還不錯 引導一些topics
07/08 00:07, 9F

07/08 00:09, , 10F
這些關鍵字去查一查究知道如何下手了
07/08 00:09, 10F

07/08 01:19, , 11F
該不會重點是在 書的推銷..
07/08 01:19, 11F

07/08 02:40, , 12F
就函式庫、程式庫
07/08 02:40, 12F

07/08 12:44, , 13F
糟糕 是我簡體看太多嗎 @@ 看的還滿順的
07/08 12:44, 13F

07/08 17:38, , 14F
vi/vim 不是必須的 linux上有太多的text editor了
07/08 17:38, 14F

07/08 17:38, , 15F
像gedit就不錯用 圖形介面
07/08 17:38, 15F

07/08 22:16, , 16F
很普通的文吧...哪有那麼誇張
07/08 22:16, 16F

07/08 23:20, , 17F
我同事都用samba 用ultraedit看 哈哈
07/08 23:20, 17F

07/08 23:22, , 18F
joe + cscope + gcc + gdb + man 無敵
07/08 23:22, 18F

07/12 00:29, , 19F
我也用samba + soruce insight
07/12 00:29, 19F

07/14 21:42, , 20F
很久很久以前用Anjuta+Devhelp...感覺比當時的VC還好用
07/14 21:42, 20F

07/18 00:00, , 21F
推這篇 Linux下 這些都是基礎而已
07/18 00:00, 21F

07/18 00:01, , 22F
這邊提到的Library跟tool 真的都滿基本的...
07/18 00:01, 22F
文章代碼(AID): #1AKn2lFY (Soft_Job)