美文网首页程序员
ios-ld: 1 duplicate symbol for a

ios-ld: 1 duplicate symbol for a

作者: 简鱼7819 | 来源:发表于2018-09-06 18:20 被阅读11次

    这个bug只要开发一段时间的ios开发差不多都遇到过。现在归纳整理一下处理方法以供参考。

    分析错误:duplicate symbol这个两个单词是关键,duplicate是重复重叠的意思,symbol是符号的意思。那么这个编译bug就有着眼点了,就是在工程中引入重复的东东。

    一、第一种情况,也是常常遇见的

    重复导入静态库,或者其他文件

    处理方法很简单,那个文件.o报错,直接搜那个文件,多的删除

    二、第二种情况,遇见不多但是也存在(存在即合理,那就是马虎)

    在#import时引入的是.m不是.h;

    处理方法就不用说了。

    三、第三种情况,就是这次我遇到一个问题

    OC中创建一个函数的有正规常用的

    -(void)test{

    }

    也有非常规的

    void test(){

    }

    第二种这样式的定义函数,基本上是全工程唯一的,也就是说如果在其他文件中也定义这么一个函数,那么不好意思,肯定会报出上面报错。

    遇到这种情况,有这种函数或者static修饰的属性等等符号重复报错

    处理方法:[编译报错会将两个或者多个冲突的文件列出来]给其中相同符号整成不一样就可以。

    日常积累,希望能帮助到你!!!

    相关文章

      网友评论

        本文标题:ios-ld: 1 duplicate symbol for a

        本文链接:https://www.haomeiwen.com/subject/pzzxgftx.html