免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 104909 | 回复: 9
打印 上一主题 下一主题

如何解决“implicit declaration of function<函数名>”错误? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-09 10:05 |只看该作者 |倒序浏览
我的函数都是在lib库里定义,然后在程序里调用,但是在编译时出现“implicit declaration of function”错误,如何解决?谢谢!

论坛徽章:
0
2 [报告]
发表于 2010-06-09 10:08 |只看该作者
/bin/sh ./libtool --tag=CC   --mode=link gcc -Wall -Wwrite-strings -Werror -std=
gnu99 -D_GNU_SOURCE -D_REENTRANT -g -O2   -o dffserver server.c libjson.la -L./
-labctcp
程序我是这样编译的,函数在libabctcp.a中,是不是libabctcp.a也要变成la啊?

论坛徽章:
0
3 [报告]
发表于 2010-06-09 10:14 |只看该作者
调用的时候包含你的函数原型声明,再说了那个只是一个warning,你的错误在其他地方

论坛徽章:
0
4 [报告]
发表于 2010-06-09 10:23 |只看该作者
调用的时候包含你的函数原型声明,再说了那个只是一个warning,你的错误在其他地方
churchmice 发表于 2010-06-09 10:14



    出错信息如下:
yzfs.h:24: warning: missing braces around initializer
yzfs.h:24: warning: (near initialization for `wlog.pass')
server.c: In function `main':
server.c:31: warning: implicit declaration of function `daemon_procedure'
server.c:33: warning: implicit declaration of function `server_socket'
server.c:42: warning: implicit declaration of function `accept_procdure'
server.c:50: warning: implicit declaration of function `YZFSServ'
server.c:53: warning: implicit declaration of function `close'
server.c: In function `YZFSServ':
server.c:86: warning: implicit declaration of function `read_socket'
server.c:109: warning: implicit declaration of function `write_socket'
server.c:61: warning: unused variable `my_string'
server.c:61: warning: unused variable `my_int'
server.c:61: warning: unused variable `my_array'
server.c:62: warning: unused variable `ret'
server.c:63: warning: unused variable `tmpbuf'

论坛徽章:
1
黑曼巴
日期:2020-02-27 22:54:26
5 [报告]
发表于 2010-06-09 10:25 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
6 [报告]
发表于 2010-06-09 10:28 |只看该作者
因为是测试程序,一些无用的变量没有删除,现在改了一下,编译后,出错信息如下:
server.c: In function `main':
server.c:31: warning: implicit declaration of function `daemon_procedure'
server.c:33: warning: implicit declaration of function `server_socket'
server.c:42: warning: implicit declaration of function `accept_procdure'
server.c:50: warning: implicit declaration of function `YZFSServ'
server.c:53: warning: implicit declaration of function `close'
server.c: In function `YZFSServ':
server.c:83: warning: implicit declaration of function `read_socket'
server.c:106: warning: implicit declaration of function `write_socket'

论坛徽章:
0
7 [报告]
发表于 2010-06-09 10:41 |只看该作者
很明显,没包含头文件
c/unix 发表于 2010-06-09 10:25



    我以前都是在SCO中用C开发,这样的程序没有问题,为什么在LINUX上就出错了呢?头文件在哪里加?

论坛徽章:
1
黑曼巴
日期:2020-02-27 22:54:26
8 [报告]
发表于 2010-06-09 10:44 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
9 [报告]
发表于 2010-06-09 11:26 |只看该作者
把-Werror去掉

论坛徽章:
0
10 [报告]
发表于 2013-12-27 13:17 |只看该作者
具體是去掉-Werror-implicit-function-declaration
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP