正在为类项目工作,我收到一个未知类型名称"EXTERN"错误。我正在创建系统调用(稍后将通过库调用访问)。出于某种原因,当我尝试在usr/src/releasetools中运行"make services"时,我无法弄清楚为什么我的mproc.h文件不合作。这是我收到的错误:
In file included from do_getaccesslvl.c:2:
./mproc.h:16:1: error: unknown type name 'EXTERN'
EXTERN struct mproc {
^
./mproc.h:16:8: error: expected identifier or '('
EXTERN struct mproc {
^
do_getaccesslvl.c:12:16: error: incomplete definition of type 'struct mproc'
return process->level;
~~~~~~~^
./proto.h:3:8:注意:前向声明"struct mproc"结构
MPROC;
生成 3 个错误。错误代码 1
为什么EXTERN
类型名称未知?这个"struct"
是由Minix本地定义的。我想也许我损坏了某些东西,所以我返回并恢复到Oracle Virtualbox中的先前快照,但错误仍然存在。任何帮助将不胜感激。
嗯,我想通了。抱歉,我没有添加足够的信息。该错误最终出现在我的系统调用文件中,并且是由于我包含文件的顺序造成的。更改包含文件的顺序后,一切正常!感谢您的帮助!