TLPI UNIX linux系统编程手册源代码运行
上周末開始看《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,會重新生成可執行文件.
關于第三章的可變參數部分,請參考我的筆記,如果有任何疑問與問題,歡迎與我交流討論
如果下載代碼之后make出錯,沒有生成相應的可執行文件,請升級gcc版本,參考Segmentfault相應回答
總結
以上是生活随笔為你收集整理的TLPI UNIX linux系统编程手册源代码运行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 分组后取每个组内最新的一条数
- 下一篇: Centos7.5 安装禅道16.x版本