UNIX环境高级编程 apue.h头文件的配置

购买过3本<Unix环境高级编程>
从第一版,到第二版,到再次印刷
这本书,还是非常不错的,有志于linux/unix软件开发的同仁们,应该不要错过这本。

一直也没空下来静心研究。
很努力的学习英语了,还是没有狠心去研读英文原版


从网站http://www.apuebook.com/src.tar.gz
1)下载《UNIX环境高级编程》原代码src.tar.gz
2)用命令tar -xvf src.tar.gz 解压,产生apue.2e文件夹
3)执行make
通常会出现编译不过的情况。

[分析]:
提示 "错误:apue.h:没有那个文件或目录".
apue.h是作者自定义的一个头文件,包括程序所需的常用头文件及出错处理函数。
所以因该将它放入系统头文件中(Linux下是 /usr/include),这样gcc编译器就可以找到它了。

[解决]:
1)修改 Make.defines.linux中的WKDIR=/home/xxx/apue.2e,为WKDIR=/home/user/apue.2e,这就是我们将要make的工作目录
2)然后再进入std目录,用vi或者gedit打开linux.mk,将里面的nawk全部改为awk,vi可以使用这个命令   :%s/nawk/awk/g   (注意前面有冒号)
:wq!保存,退出
3)然后 make
...

4)复制相关头文件
1. 超级用户权限登入 #cd /usr/include
2. 将apue.h和error.c两个文件copy到该目录下。
(apue.h位于 your_apue_path/inlcude ; error.c位于your_apue_path/lib )
以我的了路径为例:
#cp /home/ucfree/apue.2e/inlcude/apue.h .
#cp /home/ucfree/apue.2e/lib/error.c    .  (实现apue.h中的出错处理函数)

5)编辑apue.h
#vi apue.h
在最后一行 #endif  前面添加一行 #include "error.c"
:wq 保存,退出.

这样你就“享受”你下载的apue程序了.

你可能感兴趣的:(编程,linux,工作,unix,gcc,编译器)