網(wǎng)上大都是針對UNIX高級編程第二版的頭文件搭建,現(xiàn)在對于第三版來說有些過時,因為很對針對linux的make文件已經(jīng)改變了很多。
話不多說,下面就來看看具體的搭建過程:
1.在網(wǎng)上下載書中源代碼,點擊打開鏈接——www.apuebook.com
2.解壓文件:tar -zxvf *.tar.gz
3.cd apue.3e/
4.make
在這個過程中,你會看到最后由于can,t find-lbsd而不能make成功,解決辦法是添加libbsd.a的靜態(tài)鏈接庫
sudo apt-get install libbsd-dev
5.make(again)
6.在編譯成功的基礎上,我們進行安裝apue.h文件及其對應的靜態(tài)鏈接庫libapue.a
sudocp ./include/apue.h /usr/include/ sudocp ./lib/libapue.a /usr/local/lib/為什么要將libapue.a移到/usr/local/lib中呢?原因是libapue.a是apue.h頭文件中包含的所有函數(shù)及宏定義的具體實現(xiàn),是一個靜態(tài)鏈接庫。
查看ld.conf.d/libc.conf你會發(fā)現(xiàn)gcc在搜索鏈接庫的時候默認會去搜索/usr/local/lib/中的文件,所以我們將其放在這里,一勞永逸。。。。(不過自己要知道哦)
7.以上環(huán)境搭建成功了,下面是測試。創(chuàng)建1_3.c,輸入程序(書上的第一個程序---ls程序),保存退出。
8.gcc 1-3.c -o 1-3 -lapue (libapue.a在這里要寫成apue,具體的gcc使用規(guī)則可以man一下,呵呵)
9.看見1-3執(zhí)行程序了吧,趕緊執(zhí)行一下
./1-3 .