apue.h头文件为作者自己编写而非系统自带,故需要自行添加!
第一:打开网站 http://www.apuebook.com/
第二:选择合适的版本(一共有三个版本,根据书的版本选择)下载源码source code
解压: tar -zxvf src.2e.tar.gz
得到apue.2e
复制apue.h 到 /usr/include/下: cp ./apue.2e/include/apue.h /usr/include/
复制error.c 到 /usr/include/下: cp ./apue.2e/lib/error.c /usr/include/
第三:编辑/usr/include/apue.h文件
在文件最后#endif前加上包含error.c代码: #include "error.c"
第四:测试一下
#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("car`t open %s", argv[1]); while ((dirp = readdir(dp)) != NULL)
printf ("%s\n", dirp->d_name ); closedir(dp); exit(0);
}//end main
保存为cpp文件,然后运行这个文件。
g++ -Wall -o ls_apue ls_apue.cpp
经过上面的简单配置,UNIX环境高级编程中的例子程序都可以跑起来了。