multiply defined
多重定义,就是一个变量被定义了两次,或者定义一次被编译器编译了两次。
如下图所示的,有多个被重复定义的。。。。。
遇见是真他娘的难受


解决办法
自己写变量定义时
这种问题一般是变量定义问题,解决办法
1、变量定义在.c文件中。如果是结构体的话,结构体要在.h文件,结构体变量在.c文件中。
2、在.h文件中进行extern声明
3、其他文件include的时候只导入.h,不要include “*.c”

使用别人代码或者SDK时
这才是TM的痛苦的,有时候不知道改了哪里,突然蹦出来这种情况。
很大情况下是多次导入了某个头文件,看下图中圈出来的右边,在这些文件中
找找问题。

遇见过最恶心的情况
在进行项目使用的SDK从低版本生的稍微高点的时候,准备将新功能也添加进去。
但是出现了一个戏剧性:
就是有个关键文件,在低版本和高版本中都起到关键作用,但是两个在其他版
本冲突,TM的最后,直接将两个比对一下,将高版本部分替换到低版本中,TM的竟然好了。。。。。。。。。。。。。。。。。
具体就是将nrfx的15版本sdk将某些文件抽出来的时候,好像是ble_glue.h文件在作怪
