Linux下配置APUE的編譯環境

APUE即Unix環境高級編程,本書中幾乎全部的程序都包含一個apue.h的頭文件,那如何配置這個apue.h呢?html

一、咱們能夠在http://pan.baidu.com/s/1dDxmtbF中下載,而後放到你的Linux桌面上(沒桌面的,隨意放吧)編程

二、解壓下載的文件:函數

tar -zxv -f src.3e.tar.gz

三、進入解壓後的目錄:測試

cd apue.3e/

四、編譯:spa

make

咱們會發現出現以下錯誤:code

can,t find -lbsdhtm

五、下載並添加libbsd.a的靜態連接庫:blog

sudo apt-get install libbsd-dev

六、再次編譯:get

make

此時應該成功了,咱們把apue.h 與 libapue.a 放入到對應的目錄中,用以下命令完成:編譯

sudo cp ./include/apue.h /usr/include/
sudo cp ./lib/libapue.a /usr/local/lib/

爲何要將libapue.a移到/usr/local/lib中呢?

緣由是libapue.a是apue.h頭文件中包含的全部函數及宏定義的具體實現,是一個靜態連接庫。

查看ld.conf.d/libc.conf你會發現gcc在搜索連接庫的時候默認會去搜索/usr/local/lib/中的文件,因此咱們將其放在這裏,一勞永逸。。。。(不過本身要知道哦)

七、測試環境:

gcc 書上的程序.c -o 輸出名字 -lapue (libapue.a在這裏要寫成apue,具體的gcc使用規則能夠man一下,呵呵)

 

改編自:http://blog.sina.com.cn/s/blog_94977c890102vdmu.html

相關文章
相關標籤/搜索