ios开发之duplicate symbol for architecture x86_64 错误

1、错误提示

       在咱们开发iOS中常常会遇到这样的一个错误提示:
       xcode

 2、查找分析


     经过xcode的给咱们的提示可以看到这几个关键字:duplicate 和 symbols,经过有道翻译原来
duplicate 是重复、复制的意思,symbols是符号的意思,所以可以想到本身的工程中可能引入了重复的东西。框架

3、解决问题


    像这种错误信息,我总结了一下,有三种状况:


    1.在工程中重复导入相同的文件。

         通常就是,一样的第三方框架你导入了两次,或者是你导入了两个相同的类文件以下图所演示,我导入了两个QkHero类文件:

错误提示:

你们有可能会问项目中那么多文件怎么知道是哪一个?别急,上图我用红方框给你圈住的就是重复导入的类文件。仔细看看你的错误信息中是否出现了你熟悉的类文件。有重复的类把它删掉就OK了spa

     二、引入头文件错误

          引入头文件错误就是在工程中#import "xxx.h" 写成了 #import"xxx.m".就是将.h文件错引入成了.m文件如演示图:
     

错误提示:

找到这个头文件把它改为.h文件就OK了翻译

     三、全局变量的命名重复

           此问题就是当前的类文件中的全局变量或者是枚举与引入的类文件有命名冲突,如图所示:
   



 错误提示:
code

  我在viewcontroller中和QKHero 中分别定义了全局变量name, 编译后出现以上错误提示:duplicate symbol for architecture x86_64,你们细心的童鞋可以发现我用红色框和蓝色框分别框住了两个不一样的类,viewcontroller和QKHero, 对!没错,就是他们两个文件有着相同的全局变量名称。只需把它们的变量名称改一下就OK了。开发

      好了,以上就是小编碰到的问题总结了一下,若是你还碰到了不一样的错误,请欢迎联系小编。我会努力改进。
      请不要“赞我” ,“评论我” 我会“骄傲”的。 😄😄😄😄😄😄it

相关文章
相关标签/搜索