为什么明明头文件中有此符号定义,编译时却显示找不到?

2019-12-25 18:48发布

嗯,那个, 我用keil5.1,arm gcc编译器 mirco-lib进行了勾选

然后编译的时候显示a.c文件编译后的a.o文件里引用的符号,姑且叫FOO吧,不存在。这
个东西其实是个结构体的。

然后我就下意识的去.c文件找了。

结果奇葩的是,这个对应的.c文件里根本没有用到这个符号FOO……呃,,

然后我在搜索工具里面搜索整个工程,发现FOO在多处被引用,其中一处在
a.c的包含的头文件bc.h里面。

然后我就打开bc.h,发现里面对FOO的原型进行了定义,形式如下:

  1. typedef   struct      
  2.     {   
  3.         ...
  4.     } FOO_t
复制代码
然后后面有一处是

  1.         FOO_t FOO;
复制代码

其它还有好几处引用……但是都看不出什么问题、、、

就是这样……照道理来说,应当没有任何问题的,但是只要一
编译,就显示a.o里面引用的符号FOO找不到。

这个……我觉得好无语……大家能不能想到可能的原因?我总结罗列下一个个去试,排除法,,

最后弱弱问下,我好久没来,大家想我了没有呼呼^_^
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
25条回答
motoedy
1楼-- · 2019-12-25 23:48
原来习学发开还在,好久没见发帖了。
楼下帮忙解决问题。
boboo
2楼-- · 2019-12-26 04:13
原来习学发开还在,好久没见发帖了。
楼下帮忙解决问题。
习学发开
3楼-- · 2019-12-26 05:09
队形???

不行不行,坚决打破!我是来问问题的,不是当坛红~~
AlertTao
4楼-- · 2019-12-26 08:58
 精彩回答 2  元偷偷看……
powermeter
5楼-- · 2019-12-26 12:30
我记得是屏蔽你的呀,怎么现在能看到了。
spring152
6楼-- · 2019-12-26 13:58
有来一水

一周热门 更多>