按照书上的例子 用gcc编译时会提示#include “unp.h”没找到
1、下载书上的源码
地址:http://www.unpbook.com/src.html
我这里是保存到 unpstudy目录 ,可以自定义!
# mkdir /usr/unpstudy
# cd /usr/unpstudy
# wget http://www.unpbook.com/unpv13e.tar.gz
# tar -xvzf unpv13e.tar.gz
2、开始编译
# cd unpv13e
# ./configure
# cd lib
# make
# cd ../libfree
# make
提示报错为:
解决办法:
# vim inet_ntop.c // 将第60行的 size_t size 改成 socklen_t size;
# make // 重新make
make之后如果有提示warning 和 note 的不用管。
# cd ../libgai
# make
3、修改unp.h 并复制到include
# cd ..
# cp libunp.a /usr/lib
# cp libunp.a /usr/lib64
# vim lib/unp.h // 将#include "../config.h" 改成 #include "config.h"
# cp lib/unp.h /usr/include
# cp config.h /usr/include
4、编译需要带的参数 -lunp 其实就是libunp.a 的libunp缩写
# cd intro
# gcc daytimetcpcli.c -o cli -lunp // 编译成功即表示搭建成功