我使用的是CocoaPods,在我添加Sonic.framework之前,一切都很好。
我收到一个链接器错误:
ld: 96 duplicate symbols for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation) 完整日志:http://pastebin.com/TqdWWYdt
有什么帮助吗?
发布于 2013-05-27 20:17:30
可能会有一些文件被多次添加到项目中
pod install:将所有框架删除到pod文件中,并调用pod install :to pod install这可能会解决这个问题。
发布于 2013-05-27 21:15:21
冲突的包很可能是AFNetworking,它可以在您发布的构建日志中找到(在第7行,duplicate symbol _OBJC_IVAR_$_AFQueryStringPair._field in:..,通过谷歌搜索AFQueryStringPair可以快速进入与AFNetworking相关的位置)。
有问题的符号被声明为here。
Sonic SDK会嵌入AFNetworking吗?
如果是这样的话,你可能足够幸运,能够使用Sonic SDK中嵌入的AFNetworking,通过简单地放弃对AFNetworking的依赖来解决这个问题。如果AFNetworking是您的其他依赖项之一的下游依赖项,则会有一点棘手。但至少你知道该去哪里找。
编辑:因为你也用RESTKit标记了问题,这可能比Sonic SDK (参见this)线程更有可能是罪魁祸首。
发布于 2015-09-23 00:25:51
在我的例子中,它是由我的项目构建设置的“链接”部分中的“其他链接器标志”中的无关-l"Pods-AFNetworking“引起的。我在其他链接器标志中删除了这个和其他一些无关的-lfoo参数:所有重复的符号都消失了。
您可以检查的其他内容可能包括:
不要忘记,您可以取消选中目标文件的"Target Membership“复选框,以防止它包含在您的构建中,因此,如果出于兼容性原因需要多个版本,您可以按目标选择哪些文件是活动的。
https://stackoverflow.com/questions/16771419
复制相似问题