4 回答

TA贡献1777条经验 获得超10个赞
对于某些程序,这些错误是正常现象,不应修复。
我在编译程序phrap时收到这些错误消息(例如)。该程序恰好包含修改或替换某些内置函数的代码,当我包含适当的头文件来修复警告时,GCC会生成一堆错误。因此,修复警告会有效地破坏构建。
如果您将源代码作为应该正常编译的发行版的一部分,则错误可能是正常的。请确保查阅文档

TA贡献1843条经验 获得超7个赞
这是一些产生上述错误的C代码:
int main(int argc, char **argv) {
exit(1);
}
在带有gcc的Fedora 17 Linux 64位上像这样编译:
el@defiant ~/foo2 $ gcc -o n n2.c
n2.c: In function ‘main’:
n2.c:2:3: warning: incompatible implicit declaration of built-in
function ‘exit’ [enabled by default]
el@defiant ~/foo2 $ ./n
el@defiant ~/foo2 $
为了消除警告,请将以下声明添加到文件顶部:
#include <stdlib.h>

TA贡献1831条经验 获得超10个赞
我在mempcpy功能上遇到了这些警告。手册页中说此功能是GNU扩展,摘要显示:
#define _GNU_SOURCE
#include <string.h>
在#define之前将#include_ 添加到我的源代码中,使GNU扩展的声明可见并且警告消失。
- 4 回答
- 0 关注
- 704 浏览
添加回答
举报