【axc】关于duplicate symbols for architecture x86_64错误的第三种可能及其解决办法
今天分析一下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错误的第三种可能及其解决办法的更多相关文章
- iOS之duplicate symbols for architecture x86_64错误
在我们写代码过程中可能会经常遇到这样一个错误: <span style="font-size:32px;color:#ff0000;">ld: 4 duplicate ...
- iOS开发之duplicate symbols for architecture x86_64错误
[主要内容:] 1. 错误提示 2. 分析错误原因 3. 解决问题办法 一.错误提示 在我们写代码过程中可能会经常遇到这样一个错误: <span style="font-size: ...
- 解决duplicate symbols for architecture x86_64错误
duplicate symbols for architecture x86_64 两个不第三方SDK之间的文件里面内容重复了,类似 file.h+file.m 和 CHfile.h+CHfile.m ...
- error===>ld: 2 duplicate symbols for architecture x86_64
一,经历 1> 出现了以下错误,感觉像是GiftAnimationView文件的问题 /Users/liuzhu/Library/Developer/Xcode/DerivedData/test ...
- 【iOS】duplicate symbols for architecture x86_64
今天遇到了这个问题,错误如下: duplicate symbol _OBJC_IVAR_$_BCViewController.bank in: /Users/***/Library/Developer ...
- Xcode中 xx duplicate symbols for architecture i386错误提示
今天在编译iOS项目时Xcode报如下错误: ld: 15 duplicate symbols for architecture i386 clang: error:linker command fa ...
- iOS开发-编译出错 duplicate symbols for architecture x86_64
今天对原来项目文件进行重新整理,根据文件内容进行分类,结果复制粘贴时没注意把一个文件复制了两遍 编译的时候就出现Duplicate Symbol Error 在网上搜素了一圈发现也有人遇到过这个问题, ...
- 用xcode6.3编译早期工程时出现Undefined symbols for architecture x86_64错误的解决办法(转)
Xcode升级到5.1 新特性之一就是默认让所有App都通过64位编译器编译.原来在Xcode5.0.x的时候默认的Standard architectures只有(arm7,armv7s),到5.1 ...
- ios开发错误之: Undefined symbols for architecture x86_64
错误如下: Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_RoutingHTTPServer", refere ...
随机推荐
- android项目 在签名打包遇到的问题
我在签名打包前,build success ,可以把程序安装在手机上 然后签名打包的时候,build fail ,原因采用了release 版本,因此这个时候在gradule build 添加下面 ...
- oracle增量备份
在进行数据库维护的过程中经常会遇到数据库备份的问题.先介绍一种常用的数据备份操作系统执行计划+批处理命令:在win的系统中存在 任务计划程序 选项:新建任务选中你写好的程序,设定好时间,就可以按照设定 ...
- [题解+总结]NOIP2015模拟题2
// 此博文为迁移而来,写于2015年7月22日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102w72i.html 1.总 ...
- [知识点]平衡树之Splay
// 此博文为迁移而来,写于2015年7月18日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102w6rg.html 1.前 ...
- Hibernate4Maven
How to create a Maven project with Hibernate libs? This blog will be a demo to describe this issue. ...
- 使用diff制作补丁
1.制作补丁包 命令格式 diff -uNr oldfile.c newfile.c > x.patch 2.打补丁 命令格式 patch -p0 < x.patch 总结一下:单个文件 ...
- [LintCode] Reverse Linked List 倒置链表
Reverse a linked list. Have you met this question in a real interview? Yes Example For linked list 1 ...
- [LintCode] Evaluate Reverse Polish Notation 计算逆波兰表达式
Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are +, -, ...
- List相关知识点.......课堂加整理
package lis0924; //接口List(列表) import java.util.ArrayList; import java.util.Iterator; import java.uti ...
- POJ1154
LETTERS Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 8119 Accepted: 3661 Descripti ...