编译报重定义怎么回事。。。

2019-07-21 04:23发布

发现原子的OLED字库跟LCD字库是一样的,所以同时在oled.c 和lcd.c里include了同一个字库,不过不知道为什么编译时会报重定义,单独用一个屏幕的时候都没问。 虽然一般不会两个屏幕一起用,但是很想知道是为什么。。。。请高手指点一下。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
Electfans
1楼-- · 2019-07-21 06:52
你都说是重定义了就证明asc2_1206,asc2_1608,asc2_2412的变量名重复了,只要改变其中一个头文件的变量名就可以了,或者声明外部变量


Electfans
2楼-- · 2019-07-21 08:05
把其中一个的font.h注释掉,再添加那两个外部变量

Nemo_gg
3楼-- · 2019-07-21 11:30
回复【2楼】Electfans:
---------------------------------
是啊,改名字当然可以,但是其实这两个字库其实是一样的,我想他们都调同一个字库,不知道为什会报这个错。
正点原子
4楼-- · 2019-07-21 12:05
回复【3楼】Nemo_gg:
---------------------------------
因为他们的名字一样,又在不同的.h文件里面,自然报重复定义的错误。
Nemo_gg
5楼-- · 2019-07-21 16:09
 精彩回答 2  元偷偷看……
Nemo_gg
6楼-- · 2019-07-21 21:28
回复【5楼】Electfans:
---------------------------------
谢谢,这样可以呀。

一周热门 更多>