很多刚开始学《unix网络编程》的同学可能会碰到跟我一样的问题, include “unp.h” 发现并没有这个文件
别急,需要配置一下
一步步来
1、书本前言提供了源码网站 http://www.unpbook.com/src.html 把源码下载解压
2、目前最新的是 unpv13e 前面几步跟着 README 来
cd 到 unpv13e
./configure # try to figure out all implementation differences
cd lib # build the basic library that all programs need
make # use "gmake" everywhere on BSD/OS systems
接下来这一步
报错
cd ../libfree # continue building the basic library
make
修改 inet_ntop.c 第60行, size_t size 改为 socklen_t size
改后 make 即可
cd ../libgai
make
cd .. //回到unpv13e目录
sudo cp libunp.a /usr/lib
sudo cp libunp.a /usr/lib64
sudo cp lib/unp.h /usr/include
sudo cp config.h /usr/include
3、编译示例代码
cd ./intro
gcc daytimetcpcli.c -o daytimetcpcli -lunp
gcc daytimetcpsrv.c -o daytimetcpsrv -lunp //编译服务器程序
sudo ./daytimetcpsrv //启动服务器
./daytimetcpcli 127.0.0.1 //运行客户端程序
4、clion cmakelist 配置
添加下面这行
target_link_libraries(untitled unp)
参考 http://blog.youkuaiyun.com/yangzijiangtou/article/details/51020593