您的位置:首页 > 产品设计 > UI/UE

【apue学习笔记】之apue.h等头文件的配置

2013-06-27 20:13 267 查看
所有例子在linux-2.6.29.3(gcc-4.3.3)下编译通过(其他平台请自行测试)。

今天开始学习,linux圣经apue,刚开始myls_c的编程便苦恼了——那个apue.h的头文件是什么玩意啊!

经过一番网上查找答案,发现那是作者自己创立的一个头文件。从网上下载源代码(可以到我的资源里下载一下)看了一下。发现:

里面包括的系统函数调用有:

opnedir(),readdir(),printf(),closedir()和exit()。

其中,对于常用的函数prinft()和exit(),它们所在的头文件一般都知道,分别是<stdio.h>和<stdlib.h>。

而对于opnedir(),readdir()和closedir(),我们可以通过man opendir,man readdir,man closedir得到这三个关于目录操作的函数所在的头文件都是:<sys/types.h>和<dirent.h>。这两个头文件在源程序中也已经列出。

其次,还用到了作者自定义的两个函数:err_quit()和err_sys()。发现这两个函数都在下载的文件\apue.2e\lib\error.c中。

弄清这些以后,我们再来进行一下修改:

1、讲自己下载到的文件进行解压,随便找地方解压,我解压到了用户的根目录下/jiao/apue.2e

2、进入目录目录/jiao/apue.2e,把文件Make.defines.linux 中的WKDIR=/home/sar/apue.2e 修改为 WKDIR=/jiao/apue.2e。

3、然后再进入apue.2e目录下的std目录,打开linux.mk,将里面的nawk全部替换为awk

3.5、这里按照网上的教程是需要执行make指令的,但是我执行老是会出现错误,所以不管他直接执行第四步,但是不知道前三步会不会对后面产生影响,所以仍然把他当做步骤写出来。

4、把 /jiao/apue.2e/inlcude目录下的 apue.h 文件最后添加一行 #include "error.c",将该文件拷贝到/usr/include 目录中。

5、把 /jiao/apue.2e/lib目录下的 error.c 文件第一行 #include "apue.h"注释掉或者删除,也将该文件拷贝到/usr/include 目录中。

6、编译成功!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: