UNIX环境高级编程--#include "apue.h"

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
", dirp->d_name );
 
    closedir(dp);
 
    exit(0);
}//end main

保存为cpp文件,然后运行这个文件。

g++ -Wall -o ls_apue ls_apue.cpp

经过上面的简单配置,UNIX环境高级编程中的例子程序都可以跑起来了。

原文地址:https://www.cnblogs.com/stemon/p/5042215.html