如何使用《UNIX 网络编程》一书中的源码

如何使用《UNIX 网络编程》一书中的源码

一、搭环境
1.ubuntu 12.04.4 LTS precise ISO可自行去官网获取

2. vmware workstation 12.0.0 pro
之前用的vmware workstation 8, 结果装好后想使用sharefolder功能,可能是vmware-tools较旧的原因,导致/mnt/下没有出现hgfs目录,
嫌麻烦直接装了vm12

3. 上http://www.unpbook.com/获取最新源代码-unpv13e.tar.gz

4. 将其放到sharefolder后,在虚拟机里找个你自已常用的路径放进去, 解压


5.
第一步:在终端中进入upnv13e目录,然后执行代码:
./configure

第二步:这里有问题及解决方法
cd lib
make(如果报如下错误: inet_ntop.c:61: error: argument 'size' doesn't match prototype
/usr/include/arpa/inet.h:153: error: prototype declaration
inet_ntop.c第61行 size_t size ->改成 socklen_t size)
第三步:这一步没有问题
cd ../libfree
make

第四步 测试是否配置ok
cd ../intro # build and test a basic client program
make daytimetcpcli
./daytimetcpcli 127.0.0.1


acer@ubuntu:~/jwt/unpv13e/intro$ ./daytimetcpcli 127.0.0.1
connect error: Connection refused
发现报错:connect error: Connection refused
这种情况说明服务器没有启动daytime服务!那Ubuntu如何启动,daytime服务呢?

Ubuntu启动daytime服务
1. sudo apt-get install xinetd
2. sudo vi /etc/xinetd.d/daytime, change disable = yes to no
3. sudo /etc/init.d/xinetd restart

在运行 ./daytimetcpcli 127.0.0.1
出现结果!!

ps:因为在公司是内网,因此其中涉及修改虚镜像源的问题,否则apt-get不了

原文地址:https://www.cnblogs.com/zhengchunhao/p/5133886.html