卷1 套接字聯網APIhtml
一、獲取源碼spa
官網好像沒有第三版的代碼。htm
我是從這裏下載隊列
二、解壓進程
$tar zxvf unpv13e.tar.gzip
三、編譯rpc
$cd unpv13eget
$./configure 源碼
$cd lib 消息隊列
$make
$cd ../libfree
$make
$cd ../libgai
$make
卷2 進程間通訊
一、獲取代碼
因爲沒找到第三版的,因此只好用第二版
wget http://www.kohala.com/start/unpv22e/unpv22e.tar.gz
2. 解壓:
$tar -zxvf unpv22e.tar.gz
3. 編譯:
$cd unpv22e
$ ./configure
$ cd lib
$ make
會出現幾個錯誤,註釋unpipc.h第115行、479行、480行。
刪除../Make.defines中的wrapsunrpc.o
再次make。搞定
爲了方便單個文件編譯,將unp.h或unpipc.h中的include "../config.h" 改爲include "config.h"。再將config.h和unp.h或unpipc.h拷到/usr/include中。
因爲兩個confg.h有些不同,因此把兩個config.h分別修改成unpconfig.h和unpipcconfig.h。同時unp.h和unpipc.h中包含的頭文件也要修改。
再將libunp.a和libunpipc.a拷到/usr/lib中。
這樣在練習的時候能夠直接-lunp或-lunpipc來編譯。
---恢復內容結束---
卷1 套接字聯網API
一、獲取源碼
官網好像沒有第三版的代碼。
我是從這裏下載
二、解壓
$tar zxvf unpv13e.tar.gz
三、編譯
$cd unpv13e
$./configure
$cd lib
$make
$cd ../libfree
$make
$cd ../libgai
$make
卷2 進程間通訊
一、獲取代碼
因爲沒找到第三版的,因此只好用第二版
wget http://www.kohala.com/start/unpv22e/unpv22e.tar.gz
2. 解壓:
$tar -zxvf unpv22e.tar.gz
3. 編譯:
$cd unpv22e
$ ./configure
$ cd lib
$ make
會出現幾個錯誤,註釋unpipc.h第115行、479行、480行。
刪除../Make.defines中的wrapsunrpc.o
再次make。搞定
爲了方便單個文件編譯,將unp.h或unpipc.h中的include "../config.h" 改爲include "config.h"。再將config.h和unp.h或unpipc.h拷到/usr/include中。
因爲兩個confg.h有些不同,因此把兩個config.h分別修改成unpconfig.h和unpipcconfig.h。同時unp.h和unpipc.h中包含的頭文件也要修改。
再將libunp.a和libunpipc.a拷到/usr/lib中。
這樣在練習的時候能夠直接-lunp或-lunpipc來編譯。
Tips:libunpipc.a直接編譯會連接錯誤,因爲用到POSIX 消息隊列的API須要連接librt庫,因此在後面加上-lrt編譯選項便可。