《UNIX網路程式設計》實驗環境搭建、unp.h
學Linux下的網路程式設計,stevens的《UNIX網路程式設計 卷一》不可不看。經典中的戰鬥機。
本文記錄實驗環境的搭建過程。
本人linux用的是Centos 6.4 。
1、下載原始碼
得到原始碼包:unpv13e.tar.gz
2、解壓
tar -zxvf unpv13e.tar.gz
3、編譯
cd unpv13e
閱讀README
依次執行一下幾個命令:
./configure
cd lib
make
cd ../libfree
make
#這時會在unpv13e目錄下生成libunp.a庫
cd ../intro
make daytimetcpcli#書中第一章中的第一個例子
./daytimetcpcli 127.0.0.1
4、常見問題
上述執行,如果顯示時間,就ok了。
如果顯示connect error:Connection refused。表明你的daytime服務沒有開啟。或者壓根就沒有安裝該服務。
如果 /etc/xinetd.d/下沒有這些檔案,chargen-dgram chargen-stream daytime-dgram daytime-stream discard-dgram discard-stream echo-dgram echo-stream tcpmux-server time-dgram time-stream,說明你沒有安裝該服務。
安裝即可:yum install xinetd
修改 daytime-dgram和daytime-stream 中的disable=yes為disable=no
開啟服務:service xinetd start
*********************哥哥哥哥哥*******************************
上面是在提供的原始碼包中進行的操作。如果後續要自己使用unp.h,怎麼辦?
1、首先將上述libunp.a複製到/usr/lib下
2、cp lib/unp.h /usr/include
3、cp config.h /usr/include
4、vim /usr/include/unp.h
將#include "../config.h"=======>#include "config.h"
5、cp lib/error.c /usr/include#這裡麵包含了stevens對一些出錯函式的封裝,相當不錯~
寫程式是#include “error.c”即可~