unix网络编程第三版环境配置

一,配置

 wget  http://www.unpbook.com/unpv13e.tar.gz

  cp unpv13e.tar.gz /home

 cd /home
tar -xvf unpv13e.tar.gz 

 cd unpv13e/

 ./configure 
 make

 cd lib 
   make
 cd ../libfree/
 make
 vim inet_ntop.c 
 make
vim inet_ntop.c 
 make
 cd ../libgai/
 make
 cd ..
sudo cp libunp.a /usr/lib
 sudo cp libunp.a /usr/lib32
 vim  lib/unp.h
  sudo cp lib/unp.h /usr/include/
  sudo cp config.h /usr/include/
 ls
 cd inetd/
 ls
  make
 ls
 ./daytimetcpsrv2 47.93.31.88
  ls
 history > 配置.txt

中途有保存文件要修改文件

可以宏替换

define size_t socklen_t

 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)

这里写图片描述

这里写图片描述

测试代码

使用make命令进行测试
cd intro 
make daytimetcpsrv 
make daytimetcpcli 
//测试结果 
./daytimetcpsrv 
./daytimetcpcli 127.0.0.1 
Sat May  6 21:35:10 2017 
使用gcc编译进行测试
//拷贝libunp.a到库文件夹目录/usr/lib,便于使用-lunp命令 
cp libunp.a /usr/lib 
//修改头文件unp.h,并将unp.h和config.h拷贝到/usr/include 
cp /lib/unp.h /usr/include 
cp config.h /usr/include 
//由于config.h与unp.h在同一个目录夹下 
vim /usr/include/unp.h 
//修改include "../config.h"成“config.h" 
编译测试代码
cd ./intro   
gcc daytimetcpcli.c -o daytimetcpcli -lunp //静态库名称
gcc daytimetcpsrv.c -o daytimetcpsrv -lunp 
./daytimetcpsrv 
./daytimetcpcli 127.0.0.1 
Sat May  6 21:35:10 2017 

这里写图片描述

静态库和动态

-l 是库名称
-L 是库的路径
-I 是头文件的路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值