1

在尝试使用gcc我编译程序时,出现以下错误。

在 /usr/include/unistd.h:218:0 包含的文件中,来自 fcfssched.c:3: /usr/include/x86_64-linux-gnu/bits/types.h:31:1:

错误:在 'typedef' 之前应有 '='、','、';'、'asm' 或 '<strong>attribute'

错误似乎在头文件中/bits/types.h

第二个错误(可能)是第一个错误的结果。

在 /usr/include/stdlib.h:320:0 包含的文件中,来自 fcfssched.c:5: /usr/include/x86_64-linux-gnu/sys/types.h:34:1:

错误:未知类型名称'__u_char'</p>

我该如何解决这个问题?

头文件似乎没问题。我刚刚使用libc6-dev包更新了标题。我正在使用带有内核 3.2.0-36-generic 的 Ubuntu 12.04 x86

4

2 回答 2

5

这种错误通常发生在用户代码中包含指令周围的语法错误的情况下。

如果没有丢失;}靠近包含的包含/bits/types.h(遵循包含树),您应该查看您的来源。

于 2013-02-25T11:56:53.010 回答
1

当您错过编码行中的 (;) 或 (}) 时,通常会出现此错误。请检查您编写的每一行代码。

解决问题的最佳方法是从收到的错误行开始逐行检查代码。不要检查项目中包含的标准文件。该错误来自您的编码文件。

于 2013-02-25T11:59:45.563 回答