Keil编译错误:Error: L6200E: Symbol ****** multiply defined (by *** and ***)

在移植正点原子OV5640的驱动程序时,遇到了multiply defined错误。错误报表如下:

         出现这么多错误,满脑子的问号❓首先检查了下这几个出现错误的命名,没有出现重定义,定义的位置仅在相应的.h文件中。

        由于移植时把所有的头文件放在了一个自定义的头文件中,那就把这几个头文件都转移到了ov5640.h的头文件下,再次编译,错误依旧...

        寻求度娘帮助,有网友说明了两个原因,一个是确实出现了重定义。另一个原因是因为keil不支持相应.h文件放在其他.h文件下,需要转移到使用的.c文件下。尝试了下转移到应用的.c文件下,问题解决!

         由于长期使用VS软件做编程,习惯上将引用放置于相应头文件中,导致移植中这种莫名的错误。那问题就是,为何不能放置于.h文件夹下引用,仅仅是不支持吗...表示不理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值