用Open Source工具開發軟體

新軟體開發關念

黃 郁熙

餃子出版社

Table of Contents
前言
1. 編輯器 - emacs and vi
簡介
基本觀念
一些特殊鍵
emacs, vi 與unix世界
emacs 快速入門
簡介
基本熱鍵
TAB的奧妙
emacs設定檔
vi 快速入門
簡介
快速命令
vi設定檔
程式與編輯器
程式語言syntax的顏色
indentation對齊
C程式的游標移動
追蹤程式碼Trace code
進階emacs使用
按鍵設定
major mode與Hook
emacs LISP(LISt Processing)
總結
其他編輯相關工具
練習
結語
2. 製作文件工具
簡介
文件結構簡介
文件框架
文件屬性
Metadata
文章結構元素
其他文字常用元素
LaTeX與SGML的範例
LaTeX的範例
SGML的範例
範例結果
其它重要使用
插入圖形(figure)
原封不動顯示(literal text)
註解
Bibliography
Logical 與Physical division
出版與dvi driver
LaTeX其它功能
數學表示式
數學元素
Counter
結語
3. CVS 版本控制系統(Concurrent Version System)
簡介
Repository的觀念
設定
Unix Server設定
設定櫃子
Un*x系統的 CVS Client設定
CVS快速入門
基本使用步驟
常用命令快速入門
CVS進階功能
自動通知開發團隊
版本編號標籤(tag)與branch Merge
Lock檔案與送交衝突(conflict)
CVS Client GUI介面
4. GNU Compiler Collection
簡介
重要的選項或旗標(FLAGS)
標頭檔 函式庫與gcc
標頭定義檔.h
函式庫
gcc與Obj檔,動態連結與ELF檔
Obj檔
動態連結
ELF檔
gcc與OS - User space/Kernel space
簡介
gcc與System call
binutils
基本工具
建造函數庫
GAS與x86(IA32)的AT&T syntax組語寫法
結語
5. Makefile撰寫
簡介
組成元素
變數(variables)
目標(target)
命令(command)
內隱規則(Implicit Rules)
簡介
自己的內隱規則
自動變數與內隱規則
其它
內建函式
控制語法
遞迴make
6. 除錯工具
簡介
ddd
基本gdb
進階gdb
訊號(signal)處理
multi-thread與multi-process除錯
遠端除錯
client/server程式除錯
core dump的除錯
kernel除錯
結語
7. 臭蟲追蹤系統
簡介
重要目錄與檔案
GNATS_ROOT
SUPPORT SITE
SUBMITTER-SITESUBMITTER-ID
Email Alias
GNATS Demon
client - client端的使用者命令
Email回報PR
Client/Server回報PR
8. 套件包裝製作
簡介
End User(Sys Admin)的觀點
簡介
package檔的操作
deb檔的包裝
簡介
建立步驟
rpm檔的包裝
簡介
建立package檔實例