UNIX環境高階程式設計第三版原始碼編譯

2021-07-23 11:45:32 字數 705 閱讀 5822

unix環境高階程式設計第三版原始碼編譯遇到的問題

一、問題描述:make,遇到錯誤:cannot find -lbsd 。

二、原因:缺少缺少libbsd檔案。

三、解決方法:

#yum install libbsd

#yum install libbsd-devel

安裝完成後就可以去apue.3e目錄make了。

# apt-get install libbsd-dev

安裝完成後就可以去apue.3e目錄make了。

編譯完成後

#cp ./include/apue.h /usr/include/

#cp ./lib/libapue.a /usr/local/lib/

當你編寫了乙個源**,你用gcc編譯的時候要在命令後面加  -lapue

否則會出現類似下面的錯誤:

/tmp/cchudidn.o: in function `main': 

1_3.c:(.text+0x20): undefined reference to `err_quit' 

1_3.c:(.text+0x5b): undefined reference to `err_sys' 

collect2: ld returned 1 exit status

這是因為你在編譯的時候沒有新增libapue.a這個庫。

《Unix環境高階程式設計第三版》程式索引

學習unix環境高階程式設計一書時,根據書上的 進行練習是一種提高閱讀興趣的好方法。該文可以幫助你編譯 以及索引書中程式的位置。作者使用的是centos7作業系統進行練習。如果沒有unix環境高階程式設計第三版課本以及源 可以從作者github裡獲取,鏈結如下 cd apue3 master mak...

unix環境高階程式設計(第三版) 讀書筆記4

對於核心而言,所有開啟的檔案都通過檔案描述符引用。檔案描述符是乙個非負整數。當開啟乙個現有檔案或建立乙個新檔案時,核心向程序返回乙個檔案描述符。unix系統shell把檔案描述符0與程序的標準輸入相關聯,檔案描述符1與標準輸出關聯,檔案描述符2與標準錯誤關聯。檔案描述符的變化範圍是0 open ma...

Javascript高階程式設計(第三版) 陣列

var colors red blue green colors.length 2 alert colors 2 undifined陣列的length屬性不是唯讀的。如果將其length的值設為大於陣列項數的值,則新增的每一項都會取得undefined值。可以方便的在陣列末尾新增新項,比如 colo...