TLPI源代碼運行與勘誤表

上週末開始看《UNIX/Linux系統編程手冊》這本書,週末的時間看到第四章,覺得這本書比直接看Linux內核要好接受的多,因爲從代碼入手,可以更好的理解,比如第三章系統調用的講解,如果只是理論方面可能比較枯燥,那麼這本書中的代碼,如何運行呢?

下載代碼

這本書的主頁.代碼版本有兩個:
Distribution version: a tarball of the source code that includes extra material not shown in the book. Probably, this is the version of the code that you want.
Book version: a tarball of the source code as it appears in the book.
可以根據自己的選擇下載,我下載的是第一個版本,可以點擊上面的鏈接下載,如果下載失敗,可以去主頁下載.
下載代碼,解壓之後,如下圖所示:

在tlpi-dist目錄下執行make,然後去每一個文件下單獨查看,可以發現每一個.c文件都生成了對應的可執行文件.在每一個子文件夾中都有一個make文件,有關make的作用我們可以理解爲我們寫了.c文件要去編譯, 由於要包含作者的錯誤打印等頭文件,所以使用gcc不再像我們之前gcc -o hello hello.c這樣簡單,要用include包含頭文件等,而makefile就比較簡單,每次代碼有更改直接在對應的目錄下執行make,就會生成新的可執行文件.

我們以第四章一個代碼,作爲例子:

我們在運行程序前先新建一個hello,裏面存入內容,執行,/copy會看到相應的用法,這是作者利用usageErr打印出來的內容,然後我們按照相應提示去執行,驗證,當修改相應代碼後,再次執行make,會重新生成可執行文件.
C語言命令行部分介紹參考我的文章C語言命令行參數介紹
關於第三章的可變參數部分,請參考我的筆記,如果有任何疑問與問題,歡迎與我交流討論。
如果下載代碼之後make出錯,沒有生成相應的可執行文件,請升級gcc版本,參考Segmentfault相應回答

勘誤表

勘誤表
英文pdf

發佈了128 篇原創文章 · 獲贊 40 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章