APUE中的代码不是download下来就可以直接编译执行的。由于头文件的问题,需要做相关的设置,修改一下相关的文件。首先从http://www.apuebook.com/src.tar.gz下载源码压缩包,解压到相应目录,例如:
mkdir /root/apue_src
cd /root/apue_src
tar zxvf src.tar.gz
解压以后得到文件夹apue.2e。按照以下步骤完成设置,则可以编译相关代码:
1.进入相应目录:cd apue.2e;
2.修改文件Make.defines.linux:将其中的WKDIR 修改为/root/apue_src/apue.2e,保存退出;
3.修改文件std/linux.mk:将其中的nawk全部修改为wak,可在vi下使用命令:%s/nawk/awk/g完成;
4.修改文件include/apue.h:在文件倒数第二行(也就是#endif之前)加入:#include "error.c"; 这一行;
5.切换到root账户,将include/apue.h还有lib/error.c拷贝一份到/usr/include/下
设置完毕:)