配置学习环境
开始进入学习《UNIX高级环境编程》
刚开始看第一章的第一个程序就遇见了问题
#include "apue.h"
#include <dirent.h>
int
main(int argc, char *argv[])
{
DIR *dp;
struct dirent *dirp;
if (argc != 2)
err_quit("usage: ls directory_name");
if ((dp = opendir(argv[1])) == NULL)
err_sys("can′t open %s", argv[1]);
while ((dirp = readdir(dp)) != NULL)
printf("%s\n", dirp->d_name);
closedir(dp);
exit(0);
}
其中apue.h头文件是作者自己定义的头文件,我们需要去书中提供的网站上下载需要的源码。http://www.apuebook.com
经Google后发现,下载的源码需要编译,并且把aupe.h和error.h两个文件复制到头文件目录下(我放到了/usr/local/include/)
编译
在apue.3e目录下直接输入命令
<pre>make</pre>
编译没有报错就说明没有问题
复制头文件到/usr/local/include
cp ./include/apue.h /usr/local/include/
cp ./lib/error.c /usr/local/include/
apue.h 在apue.3e/include目录下
error.c 在apue.3e/lib目录下
编辑刚刚复制过去的apue.h
<pre>vi /usr/local/include/apue.h</pre>
在最后一行#end if之前插入
<pre>#include "error.c"</pre>
检验
切换目录到apue.3e/intro
编译hello.c
<pre>clang hello.c</pre>
<pre>./a.out</pre>
如果没有报错,就是可以了