apue编译错误汇总(Ubuntu 12.04)
apue源码make:/usr/include/bits/timex.h:31:7: 错误:expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ be的解决方法
如题,出现这个问题的原因是在timex.h的第31行出现了status的定义:
- int status; /* clock command/status */
而文件apue.2e/ipp/ipp.h中有宏定义:
- #define status u.st
这样编译的时候就出问题了,如编译提示:
- expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘.’ token
解决方法是把ipp.h文件里的status改成其他名称,比如Status,再次编译,错误提示status神马的信息,找到status出错的位置,把它改为Status就行了。
此处我的status出错位置在printd.c的第977行中:
- i = ntohs(hp->status);