最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#include “unp.h”  相当有个性并且也很便捷

于是我把第三版的源代码编译实现了这个过程,算是一种个性化的开发环境的搭建吧,顺便把过程记录下来,以便自己以后查阅。

首先去网上找到源代码包unpv.13e.tar.gz 一找一大堆

解压缩到你的某个目录,unpv13e里面大致有这些目录

├── aclocal.m4 
├── advio 
├── bcast 
├── config.guess 
├── config.h 
├── config.h.in 
├── config.log 
├── config.status 
├── config.sub 
├── configure 
├── configure.in 
├── debug 
├── DISCLAIMER 
├── icmpd 
├── inetd 
├── install-sh 
├── intro 
├── ioctl 
├── ipopts 
├── key 
├── lib 
├── libfree 
├── libgai 
├── libroute 
├── libunp.a(就是为了生成这个文件) 
├── Make.defines 
├── Make.defines.in 
├── Makefile 
├── Makefile.in 
├── mcast 
├── mysdr 
├── names 
├── nonblock 
├── oob 
├── ping 
├── README 
├── route 
├── rtt 
├── sctp 
├── select 
├── server 
├── sigio 
├── sock 
├── sockopt 
├── sparc64-unknown-freebsd5.1 
├── ssntp 
├── streams 
├── tcpcliserv 
├── test 
├── threads 
├── traceroute 
├── udpcksum 
├── udpcliserv 
├── unixdomain 
├── unpv13e 
└── VERSION

首先查看README 一般情况下我们只需要进行第一步和第二步 其他的是一些与其他架构有关的情况不管

执行下面两部生成libunp.a

1.   ./configure

2.     cd lib

make (在lib上层目录中生成libunp.a)

生成libunp.a。复制这个静态库到/usr/lib/和/usr/lib64/中,因为后来编译程序的话需要用到这个静态库。还得在环境变量中将这两个路径加上。

接下来找到unp.h和config.h

1.我在我的主目录下新建了一个unp目录,专门处理unp的例子。然后把lib下的unp.h和上层目录的config.h放入unp目录,然后在unp目录下新建各个要实践的程序的章节目录 比如一开头的time server例子我就新建了个time server目录,在里面写书中的例子程序

:)

3.unp.h中将#include "../config.h"改成#include "config.h"

2.在unp.h中需要添加一行: 
#define MAX_LINE 2048

头文件为

#include "../unp.h"即可

如果书写的程序出现err_sys()等err函数找不到的情况 这是因为steven大神对错误处理进行了封装 可以搜索apueerror.h这个文件(有兴趣的同学可以研究下封装代码 篇幅小不难的) 然后放入unp目录 接着在程序中 #include "apueerror.h"即可

至此环境搭建结束,大家可以开始UNP编程之旅了,祝大家早日学成!~~~  哈哈

转载于:https://www.cnblogs.com/wuchanming/p/3785867.html

UNIX网络编程之旅-配置unp.h头文件环境相关推荐

  1. [转载]配置unp.h头文件环境

    原文:http://blog.csdn.net/wd4084/article/details/6452574 最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#incl ...

  2. Unix——《Unix网络编程》配置unp.h头文件

    <Unix网络编程 卷1>unp.h 头文件及其编译问题 本书源码下载地址 http://www.unpbook.com 解压tar -zxvf unpv13e.tar.gz 其实各个编译 ...

  3. 《网络编程》关于 UNIX网络编程 卷1 的 unp.h 和源码编译问题

    本文针对<网络编程 卷1>unp.h 头文件及其编译问题进行记录,本书源码下载地址http://www.unpbook.com 首先进行编译,在目录 unpv13e下依次执行以下步骤: . ...

  4. 《UNIX网络编程》配置unp.h头文件

    0x00 前言 文章中的文字可能存在语法错误以及标点错误,请谅解: 如果在文章中发现代码错误或其它问题请告知,感谢! 系统版本:Ubuntu 14.04_64 最后更新:2022-03-23 0x01 ...

  5. 04.配置unp.h头文件出现开启 xinetd daytime 服务时 /etc/xinetd.d下 没有daytime 文件的解决办法

    一.引言 最近在学习 <Unix网络编程 卷1:套接字联网 API>.在编译其第一份代码 daytimetcpcli.c 的时候,发现作者使用到了 daytime 服务.比如下面这行代码: ...

  6. Unix网络编程之-------unp.h头文件详细配置-1

    unix网络编程unp.h最详细全面配置说明 今天开始学习Unix网络编程这本大神之作了,由于之前在学习另外一本杰作Unix环境高级编程,遇到过第一个程序编译报错的情况,知道这是大神自己写的头文件在我 ...

  7. Unix网络编程unp.h问题以及Linux中的库

    Stevens的<UNIX网络编程 卷1:套接字连网API>是一本很著名的UNIX网络编程书籍.其中使用了一个unp.h的引用,如果没有设置相应的库的话,即使引入了头文件也是没用的.所以首 ...

  8. linux环境编程unp,linux网络编程之怎么配置好unp.h文件

    1.获取unp源码 然后用tar -zxvf unpv13e.tar.gz命令解压 2.进入unpv13e目录执行configure cd unpv13e ,然后执configure文件 3.打开RE ...

  9. 《Unix网络编程(第3版)》代码编译的一些问题

    现在学习<UNIX网络编程(第3版)>一书,书中源代码有一些默认情况下编译不能通过,要经过一些修改都行.这编文档将记录下我遇到的不能正常编译的程序的修改步骤. 28章:traceroute ...

最新文章

  1. 树莓派/PC实现实时摄像头数据共享(Python—OpenCV)
  2. OC与Swift封装网络工具类
  3. JavaScript 经典实例日常收集整理(常用经典)
  4. 毕业一年多被裁,没有计算机文凭,我在两个月内搞定4份Offer,且收入翻倍
  5. JQuery中button提交表单报TypeError: elem[type] is not a function jquery
  6. mine layer(2008 World Final C)
  7. 发送随机验证码到james邮箱出现请求超时的异常
  8. matplotlib tricks(一)—— 多类别数据的 scatter(cmap)
  9. CF932E Team Work(第二类斯特林数)
  10. java 多线程操作List,已经做了同步synchronized,还会有ConcurrentModificationException,知道为什么吗?...
  11. Arch Linux 安装 Virtualbox 4.2.0 备忘录
  12. ListView优化方案和原理,你都知道了嘛?
  13. 基于matlab的16QAM调制解调仿真
  14. MySQL 查询各科前三名(考虑成绩并列情况)
  15. 桂花网蓝牙路由器Cassia X1000产品介绍
  16. ipad2利用crappstore安装破解软件成功-还是写一下我安装的过程吧,大家可以参考一下...
  17. Xcode更新不了的解决办法
  18. IDEA 启动tomcat 或者springboot 卡住问题
  19. 2021ASC超算竞赛QuEST配置与实战(量子计算)
  20. js将数字转换成万、亿、万亿

热门文章

  1. ASP.NET MVC 3拥抱动态类型,徐汇区网站设计
  2. 轻松恢复误删除的共享文件,DPM2007系列之六
  3. 定位的准确度与精度指标定义——RMS,CEP,Sigma
  4. 乔氏西去,敬告各位!
  5. python以及MATLAB终止循环的快捷键
  6. 《HTML5移动应用开发入门经典》—— 2.4 HTML5中的HTML语法变化
  7. MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库
  8. getReadableDatabase与getWritableDatabase的区别
  9. PHP:echo、print、print_r() 和 var_dump()
  10. DRP问题集结(一)-Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory...