Iphone ld:871架构armv7的重复符号,铿锵:错误:链接器命令失败,退出代码为1(使用-v查看调用)

Iphone ld:871架构armv7的重复符号,铿锵:错误:链接器命令失败,退出代码为1(使用-v查看调用),iphone,ios,objective-c,ios6,Iphone,Ios,Objective C,Ios6,我在iPhone应用程序中使用FastPDFKit显示PDF。当我在模拟器上运行这个项目时,它工作得很好。然而,当我在iPhone上运行该项目时,它给出了以下错误 duplicate symbol _value_map in: /Users/alkandari/Desktop/iPhone Apps/MyTest002/MyTest002/FastPdfKit.embeddedframework/FastPdfKit.framework/FastPdfKit(FastPdfKit) du

我在iPhone应用程序中使用FastPDFKit显示PDF。当我在模拟器上运行这个项目时,它工作得很好。然而,当我在iPhone上运行该项目时,它给出了以下错误

duplicate symbol _value_map in:
    /Users/alkandari/Desktop/iPhone Apps/MyTest002/MyTest002/FastPdfKit.embeddedframework/FastPdfKit.framework/FastPdfKit(FastPdfKit)
duplicate symbol _writeUnicodeToUTF8Buffer in:
    /Users/alkandari/Desktop/iPhone Apps/MyTest002/MyTest002/FastPdfKit.embeddedframework/FastPdfKit.framework/FastPdfKit(FastPdfKit)
ld: 871 duplicate symbols for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ld: 871 duplicate symbols for architecture armv7


clang: error: linker command failed with exit code 1 (use -v to see invocation)
知道为什么会这样吗


在调试和发布部分的配置中添加FastPDFFramework时出错。

对于相同的内容,头文件中有太多的“include”或“import”指令。移动到在标题中使用@class,并且只在.m文件中导入/包含


总之,你只需要回顾一下它们的位置并重新评估它们

能否尝试清理FastPdfKit目标并重新编译?它应该从头生成一个新的框架,然后您应该能够将其添加到您的项目中,覆盖您正在使用的框架。您可以在FastPdfKit项目根目录中获取新的.embeddedframework。

这些线路从下面的链接帮助了我


我找到了一个解决方案,即使在弄乱了标题/框架搜索路径、重建等之后:


我在我的项目中删除了-all_load linker标志,它编译成功。作为警告,请确保删除此标志适用于您的项目。它放在那里可能是有原因的

我添加了我的解决方案,就像你按照自述一样,它会要求你做:

Inherit the project options: select the Project an from info tab and configurations line choose **FastPdfKitFramework** from the drop down list;
我将FastPdfKitFramework目标替换为None,现在它工作得很好

由于它在自述文件中,我从不在我的项目中添加.a,所以下载重新编译一个对我没有帮助,因为我不想重新启动所有集成。
我希望它能对某些人有所帮助。

经常发生此错误的另一个原因是意外地导入了.m文件而不是.h文件

这发生在我身上:)


我尝试删除
-所有加载的链接器标志,它在项目中对我有效,没有任何问题。

我没有太多包含文件。我只是在视图控制器中导入了
#import
,如果我有太多的包含,为什么问题不在于模拟器?为什么只使用iphone?你移动了什么东西吗?所以这对我来说意味着有些东西已经建成,正在重建(失败)。这似乎是类的扩展。但我可以在fastpdfkit支持论坛上为你们谷歌一下。