今天分析一下duplicate symbols for architecture x86_64错误  也是困扰我一段时间   不过很幸运 在半个小时内找到了解决方案

百度上对于duplicate symbols for architecture x86_64这种错误最多的两种解决方法是:

第一:有框架文件没有包含,导入错误即解决
第二:是由于我的粗心,在导入头文件时不小心把.h导入了.m文件,所以出现了上述错误,有一个duplicate的错误提示,修改了导入部分OK了。

但是。。我却遇到了第三种情况。。

duplicate symbol _RoutePlanningViewControllerStartTitle in:

/Users/axc_5324/Library/Developer/Xcode/DerivedData/health_town-arzecxyrnmmpyxacejwclxojeaml/Build/Intermediates/health town.build/Debug-iphonesimulator/health town.build/Objects-normal/x86_64/MyTabbarViewController.o

/Users/axc_5324/Library/Developer/Xcode/DerivedData/health_town-arzecxyrnmmpyxacejwclxojeaml/Build/Intermediates/health town.build/Debug-iphonesimulator/health town.build/Objects-normal/x86_64/NavigationViewController.o

duplicate symbol _RoutePlanningViewControllerDestinationTitle in:

/Users/axc_5324/Library/Developer/Xcode/DerivedData/health_town-arzecxyrnmmpyxacejwclxojeaml/Build/Intermediates/health town.build/Debug-iphonesimulator/health town.build/Objects-normal/x86_64/MyTabbarViewController.o

/Users/axc_5324/Library/Developer/Xcode/DerivedData/health_town-arzecxyrnmmpyxacejwclxojeaml/Build/Intermediates/health town.build/Debug-iphonesimulator/health town.build/Objects-normal/x86_64/NavigationViewController.o

duplicate symbol _RoutePlanningPaddingEdge in:

/Users/axc_5324/Library/Developer/Xcode/DerivedData/health_town-arzecxyrnmmpyxacejwclxojeaml/Build/Intermediates/health town.build/Debug-iphonesimulator/health town.build/Objects-normal/x86_64/MyTabbarViewController.o

/Users/axc_5324/Library/Developer/Xcode/DerivedData/health_town-arzecxyrnmmpyxacejwclxojeaml/Build/Intermediates/health town.build/Debug-iphonesimulator/health town.build/Objects-normal/x86_64/NavigationViewController.o

ld: 3  duplicate symbols for architecture x86_64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

有道给我的翻译是这样的:重复的路线规划视图控制器开始象征冠军 = =。。玛德制杖

不过也比较清楚 。。。某个controller出现了问题  出现了导入重复错误。

可是!他喵的我检查了半天也!没!有!导!入!错!误!

经过代码的一步步排查(还好我从小养成了良好的编码风格,要么光找就得找一天)。。发现了这么三个奇(sha)葩(bi):

这是高德SDK里的路径导航用到的变量值,当时直接复制过来的。。没管那么多,谁知道这时候掉链子了

我盯着他看了半天,他盯着我看了半天。大眼盯小眼看了三分钟,,,,,

嗯,delete(去死吧你!)

然后把他们声明到了interface里去,赋值在view did load中进行  假装这是普通变量

编译,,成功!

我也不知道为什么高德2015年的SDK Demo为啥不会出错,哦对  忘了说了  这个情况在真机上正常  但无法在模拟器中编译

以上就是对于duplicate symbols for architecture x86_64这种报错的第三种解决办法,,可以检查检查代码中有没有声明的弱语法变量,而且还没有编译器的提示的那种。。最后最重要的一点 大家不要随便命名!不要随便命名!不要随便命名!否则很容易和SDK中的对象或变量重名!

毕竟SDK不会告诉你他用了那些第三方库是不是?这样很没B格的好吧。。所以命名最好按照规范命名。

祝大家编程愉快!

【axc】关于duplicate symbols for architecture x86_64错误的第三种可能及其解决办法的更多相关文章

  1. iOS之duplicate symbols for architecture x86_64错误

    在我们写代码过程中可能会经常遇到这样一个错误: <span style="font-size:32px;color:#ff0000;">ld: 4 duplicate  ...

  2. iOS开发之duplicate symbols for architecture x86_64错误

    [主要内容:] 1. 错误提示 2. 分析错误原因 3. 解决问题办法 一.错误提示   在我们写代码过程中可能会经常遇到这样一个错误: <span style="font-size: ...

  3. 解决duplicate symbols for architecture x86_64错误

    duplicate symbols for architecture x86_64 两个不第三方SDK之间的文件里面内容重复了,类似 file.h+file.m 和 CHfile.h+CHfile.m ...

  4. error===>ld: 2 duplicate symbols for architecture x86_64

    一,经历 1> 出现了以下错误,感觉像是GiftAnimationView文件的问题 /Users/liuzhu/Library/Developer/Xcode/DerivedData/test ...

  5. 【iOS】duplicate symbols for architecture x86_64

    今天遇到了这个问题,错误如下: duplicate symbol _OBJC_IVAR_$_BCViewController.bank in: /Users/***/Library/Developer ...

  6. Xcode中 xx duplicate symbols for architecture i386错误提示

    今天在编译iOS项目时Xcode报如下错误: ld: 15 duplicate symbols for architecture i386 clang: error:linker command fa ...

  7. iOS开发-编译出错 duplicate symbols for architecture x86_64

    今天对原来项目文件进行重新整理,根据文件内容进行分类,结果复制粘贴时没注意把一个文件复制了两遍 编译的时候就出现Duplicate Symbol Error 在网上搜素了一圈发现也有人遇到过这个问题, ...

  8. 用xcode6.3编译早期工程时出现Undefined symbols for architecture x86_64错误的解决办法(转)

    Xcode升级到5.1 新特性之一就是默认让所有App都通过64位编译器编译.原来在Xcode5.0.x的时候默认的Standard architectures只有(arm7,armv7s),到5.1 ...

  9. ios开发错误之: Undefined symbols for architecture x86_64

    错误如下: Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_RoutingHTTPServer", refere ...

随机推荐

  1. 每天一个linux命令---导出到文件

    导出Linux下的部分日志到文件,使用‘>’符号 例如: [calendar@test190 logs]$ monitor.log|grep getCalendarView > share ...

  2. 2014-2015 ACM-ICPC, NEERC, Moscow Subregional Contest F. Friends

    F. Friends time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...

  3. iOS学习07之C语言指针

    本次随笔主要是为了学习和理解C语言中的指针,指针树状图如下: 1.访问数据的两种方式 1> 直接访问:定义变量后,直接访问变量 ; printf("a = %d\n", a) ...

  4. JS学习(二)

    1 数组对象 作用是:使用单独的变量名来存储一系列的值. 1.1 新建数组: var mycars = new Array() mycars[0] = "Saab" mycars[ ...

  5. POJ 3320 (尺取法+Hash)

    题目链接: http://poj.org/problem?id=3320 题目大意:一本书有P页,每页有个知识点,知识点可以重复.问至少连续读几页,使得覆盖全部知识点. 解题思路: 知识点是有重复的, ...

  6. 优先使用最新版本的IE 和 Chrome 内核 1 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    兼容模式 优先使用最新版本的IE 和 Chrome 内核 1 <meta http-equiv="X-UA-Compatible" content="IE=edge ...

  7. BZOJ1858[Scoi2010]序列操作 题解

    题目大意: 有一个01序列,现在对于这个序列有五种变换操作和询问操作: 0 a b 把[a, b]区间内的所有数全变成0:1 a b 把[a, b]区间内的所有数全变成1:2 a b 把[a,b]区间 ...

  8. POI2012 (持续更新中)

    Distance Well Vouchers Cloakroom A Horrible Poem Rendezvous Fibonacci Representation Squarks Salarie ...

  9. 【BZOJ2049】 [Sdoi2008]Cave 洞穴勘测 LCT/并查集

    两种方法: 1.LCT 第一次LCT,只有link-cut和询问,无限T,到COGS上找了数据,发现splay里的父亲特判出错了(MD纸张),A了,好奇的删了反转T了.... #include < ...

  10. Install the Maven in your computer

    While, this blog will talk about installing the Maven in your computer. There are three steps as fol ...