warning: conflicting types for built-in function 'puts'
2012-11-21 22:13
561 查看
warning: conflicting types for built-in function 'puts'
【编译器版本】 arm-linux-gcc 3.4.1【问题描述】 在做嵌入式底层开发时,自己写了一个puts函数,也就是通过串口发送字符串到超级终端。但在编译程序的时候出现了如下问题:warning: conflicting types for built-in function 'puts'【问题分析】 在C语言标准中,有些通用函数被定义为built-in function(内建函数),像printf,puts,strchr,memset等等,这些函数不需要包含头文件中的声明,就可以编译连接该函数的。但有时候你想自己实现,就会出现上面所示的冲突提示。 有的时候你不用包含一些头文件,也能使用那个里面包含的函数,可能是编译器包含了一些常用的简单的函数的处理,即便是你不包含头文件,编译器也知道到哪里找,但是如果是一些复杂的函数,或者是你自己写的静态库,你想使用时必须要包含;仅仅只是一些简单的函数你不用包含头文件而已。【解决办法】 1.在编译是加上-fno-builtin或者-fno-builtin-FUNCTION 选项,你就可以自己实现这些函数而不冲突了。例如在上面的提示中,你编译时加上-fno-builtin-puts ,就可以正常编译了。 2.把这些函数改个名称,以便不冲突。
相关文章推荐
- warning: conflicting types for built-in function 'puts'
- warning: conflicting types for built-in function 'puts'
- OK6410 串口警告:warning: conflicting types for built-in function 'putchar'
- warning: conflicting types for built-in function 'putc'
- warning:conflicting types for built-in function
- warning: incompatible implicit declaration of built-in function sqrt [enabled by default]
- Element type is invalid: expected a string (for built-in components) or a class/function (for compos
- convert.c:7:3: warning: incompatible implicit declaration of built-in function ‘printf’ [enabled by
- expected a string (for built-in components) or a class/function (for composite components) but got:
- JNI--warning: incompatible implicit declaration of built-in function 'memcpy'
- ReactJs 报错 Element type is invalid: expected a string (from built-in components) or a class/function (for composite components) but got: undefined. Check the render method of `Me`.
- 【C】编译提示 warning: incompatible implicit declaration of built-in function ‘calloc’ [enabled by default]
- WARNING: arch/arm/mach-omap2/built-in.o(.text+0x12cdc): Section mismatch in reference from the function mmc0_init() to the (unknown reference) .init.data:(unknown)
- warning: incompatible implicit declaration of built-in function ‘strlen’
- warning: incompatible implicit declaration of built-in function ‘xyz’
- warning: incompatible implicit declaration of built-in function ‘malloc’ [enabled by default]
- warning: incompatible implicit declaration of built-in function 'exit'
- Linux C 错误处理 warning: incompatible implicit declaration of built-in function ‘exit’
- 如何解决warning: incompatible implicit declaration of built-in function 'malloc'
- warning: incompatible implicit declaration of built-in function 'exit'