【學習總結】UNIX網絡編程使用源碼配置

卷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編譯選項便可。

相關文章
相關標籤/搜索