相信很多初學《UNIX環境高級編程》的朋友都會遇到一個問題,運行裡面的實例(download: http://www.apuebook.com/ )時就出現問題,提示 "錯誤:apue.h:沒有那個文件或目錄". apue.h是作者自定義的一個頭文件,包括程序所需的常用頭文件及出錯處理函數。所以因該將它放入系統頭文件中(Linux下是 /usr/include),這樣gcc編譯器就可以找到它了。
UNIX環境高級編程中文第二版PDF高清版 下載地址 http://www.linuxidc.net/thread-2063-1-1.html
1. 超級用戶權限登入 cd /usr/include
2. 將apue.h和error.c兩個文件copy到該目錄下。(apue.h位於 your_apue_path/inlcude ; error.c位於your_apue_path/lib )
eg
cp /home/lucifer/Downloads/apue.3e/inlcude/apue.h .
cp /home/ucfree/apue.3e/lib/error.c . (實現apue.h中的出錯處理函數)
3. 編輯apue.h
在最後一行 #endif /* _APUE_H */ 前面添加一行 #include "error.c"
:wq 保存,退出.
大功告成。
測試
Unix環境高級編程 源代碼地址 http://www.linuxidc.com/Linux/2011-04/34826.htm
Unix環境高級編程源碼編譯 http://www.linuxidc.com/Linux/2011-09/42503.htm
apue.h頭文件(Unix環境高級編程) http://www.linuxidc.com/Linux/2012-01/51729.htm
《Unix環境高級編程》(第二版)apue.h的錯誤 http://www.linuxidc.com/Linux/2011-04/34662.htm
Unix環境高級編程第二版讀書筆記 http://www.linuxidc.com/Linux/2011-04/34235.htm
《Unix環境高級編程》中apue.h的問題 http://www.linuxidc.com/Linux/2013-01/77686.htm