您的位置:首页 > 其它

重复引用错误:duplicate symbols for architecture x86_64

2015-11-18 14:43 501 查看
主题:重复引用库造成的难以解决的错误。
错误关键字:

ld: 9 duplicate symbols for architecture x86_64

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

GenerateDSYMFile......


error: cannot parse the debug map for "/Users/LuohanCC/Library/Developer/Xcode/DerivedData/ProjectName-btzlnejejistppgnaecaydoqdomg/Build/Products/Debug-iphonesimulator/ProjectName.app/ProjectName":
No such file or directory
这种错误一般会产生两个错误:

第一个错误报两个库冲突





第二个错误报找不到文件






分析:从第一个错误看出项目中重复包含了多个Reachability(replicate symbols for architecture x86_64)
解决:如果是直接拖进项目的话,并在Search Paths中的Framework Search
Paths、Library Search Paths、User Header Search Paths 中删除引用。

如果是从Pods中引入的Reachability,直接从Pods删除,直接删除Podfile中的引用语句便可。
但是:如果在Pods文件夹中存在Reachability文件夹,而在Podfile中却找不到任何Reachability的引用语句,这说明这并非是通过Pod install安装的Reachability,而可能通过直接将其拖进Pods的方式来引用的,那怎么解决这个重复引用的错误呢。
解决: 1.从Pods/Pods文件夹中删除Reachability文件夹
2.删除Search Paths中Header search Paths中的"${PODS_ROOT}/Headers/Public/Reachability"
3.点击项目名Pods,删除Pods-Reachability



4.删除ProjectName/Pods/Pods.debug.xcconfig和Pods.release.xcconfig中的
-l
"Pods-Reachability"

重新运行项目,问题解决!!!!(2、3、4步也通过全局搜索“-Reachability”定位的方式删除对应的内容)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息