• 《UNIX网络编程》实验环境搭建、unp.h


    学Linux下的网络编程,stevens的《UNIX网络编程 卷一》不可不看。经典中的战斗机。

    本文记录实验环境的搭建过程。

    本人linux用的是Centos 6.4 。

    1、下载源码

    随便google一下都能找到,也可以从官网下载http://unpbook.com/unpv13e.tar.gz

    得到源码包: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”即可~

  • 相关阅读:
    计算机网络
    代码随想录三刷day37
    MATLAB初学者入门(10)—— 粒子群算法
    uCOSIII实时操作系统 二 同步与通信
    用机器学习识别不断变化的股市状况—隐马尔可夫模型(HMM)股票指数预测实战
    mac安装hive 2.3.9
    Docker harbor私有仓库部署与管理
    D1. Too Many Segments (easy version)
    第十章·桥接模式
    HIVE源码阅读(五)
  • 原文地址:https://blog.csdn.net/m0_67394230/article/details/126553092