我在本人的資源中上傳一份unix網絡編程的源碼,當然也是我從網上就可以找的,放在這裏是爲了大家尋找方便點, 如下:
http://download.csdn.net/detail/peitianmeng/7182831
unix網絡編程這本書的源碼類似於很多系統軟件的源碼組織。首先拿到源碼之後閱讀源碼的README文件。
./configure # try to figure out all implementation differences
cd lib # build the basic library that all programs need
make # use "gmake" everywhere on BSD/OS systems
cd ../libfree # continue building the basic library
make
cd ../libroute # only if your system supports 4.4BSD style routing sockets
make # only if your system supports 4.4BSD style routing sockets
cd ../libxti # only if your system supports XTI
make # only if your system supports XTI
cd ../intro # build and test a basic client program
make daytimetcpcli
./daytimetcpcli 127.0.0.1
上面幾行是README文件最重要的內容。
1. 配置源碼的編譯環境
$./configure #此命令分析源碼,爲下面執行的編譯提供必要的設置 生成Makefile和其所需要的環境變量。
2. 編譯庫文件
$cd lib && make
$cd ../libfree && make #這個兩個庫文件是許多應用程序都會用到的,所以之前先要編譯好的。
下面還有兩個命令需要,但是我ubuntu linux操作系統應該是不支持這兩個標準的 4.4BSD和XTI。
至此,編譯程序所需要的環境就是已經配置好了。
下面做第一個測試程序,也是測試源碼中的通過連接遠程時間服務器獲取當前的時間。
1. 編譯測試程序
$cd intro/ && make daytimetcpcli
2. 測試程序
$./daytimetcpcli <ipaddr>
我這邊測試的時候 書上提供的服務器ip地址並不可以使用,我從百度上隨便搜了一個時間服務器的ip地址。
執行$./daytimetcpcli 132.163.4.101
返回結果:56759 14-04-12 10:30:19 50 0 0 937.0 UTC(NIST) * 。
至此,測試工作也已完成。