【学习总结】环境高级编程源码配置

1、获取代码

点击下载

2、修改Make.defines.linux

将WKDIR修改为代码当前所处的目录。

3、编译

直接make后会遇到两个问题。

1. apue.2e/ipp/ipp.h 出现宏定义:#define status u.st

编译出现错误提示:expected ':', ',', ';', '}' or '__attribute__' before '.' token

解决方案:将apue.2e/ipp/ipp.h的宏定义:#define status u.sth中的status改成Status;然后将同目录下的printd.c中的977行的i=ntohs(hp->status);中的status改成Status。

2.提示ARG_MAX未定义

解决方案:在apue.2e/include/apue.h中添加一行:#define ARG_MAX 4096;打开apue.2e/threadctl/getenv1.c和apue.2e/threadctl/getenv3.c,添加一行:#include "apue.h"

修改以后直接make就可以了。

原文地址:https://www.cnblogs.com/zhiqli/p/3487618.html