您的位置:首页 > 理论基础 > 计算机网络

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

2015-06-04 23:42 369 查看
最近在学习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编程之旅了,祝大家早日学成!~~~  哈哈
参考文章(包含apue编程环境搭建):
http://my.chinaunix.net/space.php?uid=11765716&do=blog&id=193676
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: