【问题标题】:112 duplicate symbols for architecture arm64架构 arm64 的 112 个重复符号
【发布时间】:2017-04-01 21:55:33
【问题描述】:
重复符号 _OBJC_METACLASS_$_GTMOAuth2Keychain 在: /Users/anand/Library/Developer/Xcode/DerivedData/NIDA_Rooms-bawdeawpyzqrkjazbcspzbsqgrht/Build/Products/Release-iphoneos/GTMOAuth2/libGTMOAuth2.a(GTMOAuth2ViewControllerTouch.o) /Users/anand/Documents/Anand_ios_Project/ROC&NIDAROOMS/ROCAPP 3/GoogleOpenSource.framework/GoogleOpenSource(GTMOAuth2ViewControllerTouch.o) ld:架构 arm64 的 112 个重复符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

【问题讨论】:

  • 只需从您的项目中删除 framewrok 并清理它并再次添加它。你的重复问题解决了。
  • 用更多的重复符号更新您的问题。

标签: ios linker-errors duplicate-symbol


【解决方案1】:

您链接到 GoogleOpenSource.frameworklibGTMOAuth2.a。两者都包含(定义)符号_OBJC_METACLASS_$_GTMOAuth2Keychain。您应该从链接中删除框架或库。

【讨论】:

  • 如何解决?因为我正在使用这个框架,所以不能删除。
  • 尝试从项目的目标设置中删除库。重复符号错误应该会消失,但丢失的符号可能会出现。如果发生这种情况,请再次添加库并删除框架。你不能同时使用库和框架来构建你的应用程序。
  • 请指导如何在项目中执行此操作
  • 查看应用的目标设置。有一个标签General,您可以在其中找到Linked Frameworks and Libraries 部分。选择框架并单击下面的减号。
【解决方案2】:

implementation.h 文件中定义时,可能会发生这种情况。

特别是在这种情况下,看看GTMOAuth2Keychain 是在哪里定义的,如果它在GTMOAuth2ViewControllerTouch.h 中。

通过将实现移至.mm/.m 文件来修复它。

【讨论】:

    猜你喜欢
    • 2014-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-15
    • 2014-11-14
    • 2020-07-31
    • 2021-03-04
    • 1970-01-01
    相关资源
    最近更新 更多