在www.unpbook.com上下载源码,或者直接搜那个源码压缩包可以搜到,注意用的是13e版本,网上很多是第二版的。然后按照里面的README进行MAKE生成静态库文件,然后将两个头文件放到/usr/include下,将静态库文件放到/usr/lib和/usr/lib64下。
还要有apue的代码,这个我忘了有没生成静态库文件了,哦,其实没用到apue的代码,只是用到apueerror.h,这个网上搜一下搜到的,然后里面有#include<apue.h>,但是没用到,我把这行注释了也能没问题。
然后环境就差不多弄好了,里面还有一些细节问题,比如某个size_t size 要改成socket_t size,还有头文件unp.h里的include "../config.h"要改成 "config.h"(大概是这样,可能有点差别,详情网上搜一下)。
然后编译第一章的服务器程序,发现包裹函数Bind、Socket之类的没定义,这些函数在unp.h里有声明,定义估计是在libunp.a里,网上搜了下,在gcc命令行末尾加上-lunp就行了,大概是让加入libunp.a这个静态链接库一起链接吧。
编译链接第一章的客户端、服务器程序,都能生成可执行文件的话就说明没问题了。然后要打开服务器程序,需要sudo。然后执行客户端程序访问本地127.0.0.1,就能得到时间。
时间: 2024-11-10 07:59:16