iOS开发Implicit declaration of function 'XXXX' is invalid in C99” 报错问题

 之前代码在Xcode5.1上面跑的好好的,但是自从升级到6.0之后,就经常出现编译报错问题。后来查阅的相关资料,好像是Xcode为了兼容Swift语言,更换来编译系统(名字忘记了)。于是就报了一个C语言的C99编译错误,不说了,直接上代码。

一般出现该问题是因为通过C调用了unix/Linux 底层接口,所以需要调整c语言的编译选项,设置方法见下图:(根据实际情况选择相应的编译选项)

(Xcode默认的是GNU99[-std=gnu99])


我更换了C语言的编译之后,又紧接着来了这样的一个报错。



conflicting types for ‘方法名’ 的错误。这个方法走的是C语法,报错的意思就是说要走这个方法之前必须要先声明(我不明白为什么XCODE5.1上面没有这种坑爹的问题,这是api,怎么声明?),后来我点击COMMAND进入这个方法发现这个方法原来是苹果原生API的底层方法


通过上面查看这个API的路径,最后我在这个文件里面导入了

#import <OpenGLES/ES1/gl.h>


OK了,问题终于解决了。

相信最新的Xcode6编译系统会让很多三方api底层的C代码造成很多的问题,这里先记录下来,以免下次再出现忘记了解决流程。


原文链接点击打开链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值