[转载]配置unp.h头文件环境
原文:http://blog.csdn.net/wd4084/article/details/6452574
最近在學習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
本文轉自五岳博客園博客,原文鏈接:www.cnblogs.com/wuyuegb2312/articles/2455902.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的[转载]配置unp.h头文件环境的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux目录初识
- 下一篇: 关于mysql中int(1)中int后面