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

本文详细介绍了如何通过《UNIX网络编程》一书中的源码,利用Ubuntu环境搭建并启动daytime服务。包括环境搭建、源码配置、配置xinetd服务等步骤,并解决了配置过程中遇到的编译错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如何使用《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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值