配置apue.h頭文件的時候,作爲Linux初學者,網上的答案都是不太適用,問題百出,弄了好久總算完成!
注意我使用的是Fedora26,方法同樣適用於CentOS和Ubuntu
1、下載源碼文件
2、保存
3、tar解壓
解壓:$ tar -zxv -f filename.tar.bz2 [-C dir] (解壓*.tar.bz2至目錄dir)
解壓:$ tar -jxv -f filename.tar.gz [-C dir] (解壓*.tar.gz至目錄dir)
壓縮:$ tar -jcv -f filename.tar.bz2 要被壓縮的文件或目錄名稱(壓縮文件成filename.tar.bz2)
查詢:$ tar -jtv -f filename.tar.bz2(查看壓縮文件含有哪些文件名)
參數說明:
-c:新建打包文件
-x:解壓縮的功能
-t :查看打包文件的內容含有哪些文件名,重點在查看文件名
-j :通過bzip2的支持進行壓縮/解壓縮,文件名最好爲 *.tar.bz2
-z:通過gzip的支持進行壓縮/解壓縮,文件名最好爲 *.tar.gz
-v:在壓縮/解壓縮過程中,將正在處理的文件名顯示出來
-f 文件名: -f + 文件名,表面要被處理的文件名,建議-f單獨寫一個參數
-C 目錄 : -C + 目錄,解壓至特定的目錄
4、進入解壓目錄,make
5、報錯:缺少libbsd庫
6、安裝libbsd庫
$ sudo apt-get install libbsd-dev(網上的Ubuntu都是這樣裝的,但是我的Fedora和Ubuntu,,哎)
Fedora26下:
下載失敗
E:Couldn't find package libbsd-dev
看看我的Ubuntu版本:
通過$ apt-get install libbsd-dev
也失敗,404未找到!!!
換一種方式:
通過RPM安裝,需要下載
注意:fc代表Fedora、el代表CentOS
進入下載目錄安裝:
$ sudo rpm -ivh libbsd-0.8.3-3.fc26.x86_64.rpm
$ sudo rpm -ivh libbsd-devel-0.8.3-3.fc26.x86_64.rpm
7、make(again)
$ cd ~/apue/apue3e.h
$ make
最後make成功:
8、進入 apue.3e發現 lib include,這是我們要用的
9、複製文件
# vi apue.h
在最後一行 #endif 前面添加一行 #include "error.c"
:wq 保存,退出.
10、測試成功
自己解決問題能學到很多東西,以上,總算可以好好學習apue了。