3

重复符号 _OBJC_CLASS_$_GTMBase64 在:../../TCWeiboSDK/libTCWeiboSDK.a(GTMBase64.o) ../../TBPlatform.framework/TBPlatform(GTMBase64.o)

重复符号 _OBJC_METACLASS_$_GTMBase64 在:../../TCWeiboSDK/libTCWeiboSDK.a(GTMBase64.o) ../../TBPlatform.framework/TBPlatform(GTMBase64.o)

ld:架构 i386 的 2 个重复符号

clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

这是我的错误。我已经知道原因是两者都lib包含一个名为 的类GTMBase64,但这两个库不是开源的。所以我不能轻易修改源代码。

我曾经使用“otool”命令解压两个 .a 文件,发现GTMBase64这两个中的汇编代码lib是不同的。最后,我不知道如何解决这个问题。

4

1 回答 1

1

这个问题有几个答案。

  • 您可以将它们分别包装在自己的包装器中(请参阅:https ://stackoverflow.com/a/6538625/1298400 )
  • 您可以使用重写它们objcopy(参见:https ://stackoverflow.com/a/6940389/1298400 )
  • 您可以使用十六进制编辑器重写它们(请参阅:https ://stackoverflow.com/a/15347275/1298400 )

所有这些都是沉重的巫术,你需要小心避免非常糟糕的事情。

于 2013-11-03T03:34:50.047 回答